@mcp-z/mcp-outlook 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 (300) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +165 -0
  3. package/bin/server.js +5 -0
  4. package/dist/cjs/constants.d.cts +10 -0
  5. package/dist/cjs/constants.d.ts +10 -0
  6. package/dist/cjs/constants.js +35 -0
  7. package/dist/cjs/constants.js.map +1 -0
  8. package/dist/cjs/email/composition/outlook-message-builder.d.cts +36 -0
  9. package/dist/cjs/email/composition/outlook-message-builder.d.ts +36 -0
  10. package/dist/cjs/email/composition/outlook-message-builder.js +56 -0
  11. package/dist/cjs/email/composition/outlook-message-builder.js.map +1 -0
  12. package/dist/cjs/email/messages/messages.d.cts +7 -0
  13. package/dist/cjs/email/messages/messages.d.ts +7 -0
  14. package/dist/cjs/email/messages/messages.js +61 -0
  15. package/dist/cjs/email/messages/messages.js.map +1 -0
  16. package/dist/cjs/email/parsing/header-parsing.d.cts +18 -0
  17. package/dist/cjs/email/parsing/header-parsing.d.ts +18 -0
  18. package/dist/cjs/email/parsing/header-parsing.js +42 -0
  19. package/dist/cjs/email/parsing/header-parsing.js.map +1 -0
  20. package/dist/cjs/email/parsing/message-extraction.d.cts +4 -0
  21. package/dist/cjs/email/parsing/message-extraction.d.ts +4 -0
  22. package/dist/cjs/email/parsing/message-extraction.js +192 -0
  23. package/dist/cjs/email/parsing/message-extraction.js.map +1 -0
  24. package/dist/cjs/email/parsing/message-mapping.d.cts +21 -0
  25. package/dist/cjs/email/parsing/message-mapping.d.ts +21 -0
  26. package/dist/cjs/email/parsing/message-mapping.js +47 -0
  27. package/dist/cjs/email/parsing/message-mapping.js.map +1 -0
  28. package/dist/cjs/email/querying/execute-query.d.cts +20 -0
  29. package/dist/cjs/email/querying/execute-query.d.ts +20 -0
  30. package/dist/cjs/email/querying/execute-query.js +268 -0
  31. package/dist/cjs/email/querying/execute-query.js.map +1 -0
  32. package/dist/cjs/email/querying/query-builder.d.cts +32 -0
  33. package/dist/cjs/email/querying/query-builder.d.ts +32 -0
  34. package/dist/cjs/email/querying/query-builder.js +528 -0
  35. package/dist/cjs/email/querying/query-builder.js.map +1 -0
  36. package/dist/cjs/email/querying/search-execution.d.cts +24 -0
  37. package/dist/cjs/email/querying/search-execution.d.ts +24 -0
  38. package/dist/cjs/email/querying/search-execution.js +261 -0
  39. package/dist/cjs/email/querying/search-execution.js.map +1 -0
  40. package/dist/cjs/index.d.cts +8 -0
  41. package/dist/cjs/index.d.ts +8 -0
  42. package/dist/cjs/index.js +314 -0
  43. package/dist/cjs/index.js.map +1 -0
  44. package/dist/cjs/lib/create-store.d.cts +2 -0
  45. package/dist/cjs/lib/create-store.d.ts +2 -0
  46. package/dist/cjs/lib/create-store.js +166 -0
  47. package/dist/cjs/lib/create-store.js.map +1 -0
  48. package/dist/cjs/lib/messages-to-row.d.cts +39 -0
  49. package/dist/cjs/lib/messages-to-row.d.ts +39 -0
  50. package/dist/cjs/lib/messages-to-row.js +177 -0
  51. package/dist/cjs/lib/messages-to-row.js.map +1 -0
  52. package/dist/cjs/lib/outlook/index.d.cts +7 -0
  53. package/dist/cjs/lib/outlook/index.d.ts +7 -0
  54. package/dist/cjs/lib/outlook/index.js +56 -0
  55. package/dist/cjs/lib/outlook/index.js.map +1 -0
  56. package/dist/cjs/lib/outlook/types.d.cts +22 -0
  57. package/dist/cjs/lib/outlook/types.d.ts +22 -0
  58. package/dist/cjs/lib/outlook/types.js +6 -0
  59. package/dist/cjs/lib/outlook/types.js.map +1 -0
  60. package/dist/cjs/mcp/index.d.cts +3 -0
  61. package/dist/cjs/mcp/index.d.ts +3 -0
  62. package/dist/cjs/mcp/index.js +66 -0
  63. package/dist/cjs/mcp/index.js.map +1 -0
  64. package/dist/cjs/mcp/prompts/draft-email.d.cts +30 -0
  65. package/dist/cjs/mcp/prompts/draft-email.d.ts +30 -0
  66. package/dist/cjs/mcp/prompts/draft-email.js +184 -0
  67. package/dist/cjs/mcp/prompts/draft-email.js.map +1 -0
  68. package/dist/cjs/mcp/prompts/index.d.cts +2 -0
  69. package/dist/cjs/mcp/prompts/index.d.ts +2 -0
  70. package/dist/cjs/mcp/prompts/index.js +26 -0
  71. package/dist/cjs/mcp/prompts/index.js.map +1 -0
  72. package/dist/cjs/mcp/prompts/query-syntax.d.cts +19 -0
  73. package/dist/cjs/mcp/prompts/query-syntax.d.ts +19 -0
  74. package/dist/cjs/mcp/prompts/query-syntax.js +169 -0
  75. package/dist/cjs/mcp/prompts/query-syntax.js.map +1 -0
  76. package/dist/cjs/mcp/resources/email.d.cts +11 -0
  77. package/dist/cjs/mcp/resources/email.d.ts +11 -0
  78. package/dist/cjs/mcp/resources/email.js +233 -0
  79. package/dist/cjs/mcp/resources/email.js.map +1 -0
  80. package/dist/cjs/mcp/resources/index.d.cts +1 -0
  81. package/dist/cjs/mcp/resources/index.d.ts +1 -0
  82. package/dist/cjs/mcp/resources/index.js +17 -0
  83. package/dist/cjs/mcp/resources/index.js.map +1 -0
  84. package/dist/cjs/mcp/tools/categories-list.d.cts +96 -0
  85. package/dist/cjs/mcp/tools/categories-list.d.ts +96 -0
  86. package/dist/cjs/mcp/tools/categories-list.js +252 -0
  87. package/dist/cjs/mcp/tools/categories-list.js.map +1 -0
  88. package/dist/cjs/mcp/tools/index.d.cts +11 -0
  89. package/dist/cjs/mcp/tools/index.d.ts +11 -0
  90. package/dist/cjs/mcp/tools/index.js +62 -0
  91. package/dist/cjs/mcp/tools/index.js.map +1 -0
  92. package/dist/cjs/mcp/tools/label-add.d.cts +44 -0
  93. package/dist/cjs/mcp/tools/label-add.d.ts +44 -0
  94. package/dist/cjs/mcp/tools/label-add.js +249 -0
  95. package/dist/cjs/mcp/tools/label-add.js.map +1 -0
  96. package/dist/cjs/mcp/tools/label-delete.d.cts +54 -0
  97. package/dist/cjs/mcp/tools/label-delete.d.ts +54 -0
  98. package/dist/cjs/mcp/tools/label-delete.js +497 -0
  99. package/dist/cjs/mcp/tools/label-delete.js.map +1 -0
  100. package/dist/cjs/mcp/tools/labels-list.d.cts +96 -0
  101. package/dist/cjs/mcp/tools/labels-list.d.ts +96 -0
  102. package/dist/cjs/mcp/tools/labels-list.js +252 -0
  103. package/dist/cjs/mcp/tools/labels-list.js.map +1 -0
  104. package/dist/cjs/mcp/tools/message-get.d.cts +110 -0
  105. package/dist/cjs/mcp/tools/message-get.d.ts +110 -0
  106. package/dist/cjs/mcp/tools/message-get.js +289 -0
  107. package/dist/cjs/mcp/tools/message-get.js.map +1 -0
  108. package/dist/cjs/mcp/tools/message-mark-read.d.cts +42 -0
  109. package/dist/cjs/mcp/tools/message-mark-read.d.ts +42 -0
  110. package/dist/cjs/mcp/tools/message-mark-read.js +254 -0
  111. package/dist/cjs/mcp/tools/message-mark-read.js.map +1 -0
  112. package/dist/cjs/mcp/tools/message-move-to-trash.d.cts +54 -0
  113. package/dist/cjs/mcp/tools/message-move-to-trash.d.ts +54 -0
  114. package/dist/cjs/mcp/tools/message-move-to-trash.js +460 -0
  115. package/dist/cjs/mcp/tools/message-move-to-trash.js.map +1 -0
  116. package/dist/cjs/mcp/tools/message-respond.d.cts +52 -0
  117. package/dist/cjs/mcp/tools/message-respond.d.ts +52 -0
  118. package/dist/cjs/mcp/tools/message-respond.js +263 -0
  119. package/dist/cjs/mcp/tools/message-respond.js.map +1 -0
  120. package/dist/cjs/mcp/tools/message-search.d.cts +138 -0
  121. package/dist/cjs/mcp/tools/message-search.d.ts +138 -0
  122. package/dist/cjs/mcp/tools/message-search.js +408 -0
  123. package/dist/cjs/mcp/tools/message-search.js.map +1 -0
  124. package/dist/cjs/mcp/tools/message-send.d.cts +66 -0
  125. package/dist/cjs/mcp/tools/message-send.d.ts +66 -0
  126. package/dist/cjs/mcp/tools/message-send.js +298 -0
  127. package/dist/cjs/mcp/tools/message-send.js.map +1 -0
  128. package/dist/cjs/mcp/tools/messages-export-csv.d.cts +72 -0
  129. package/dist/cjs/mcp/tools/messages-export-csv.d.ts +72 -0
  130. package/dist/cjs/mcp/tools/messages-export-csv.js +540 -0
  131. package/dist/cjs/mcp/tools/messages-export-csv.js.map +1 -0
  132. package/dist/cjs/package.json +1 -0
  133. package/dist/cjs/schemas/index.d.cts +2 -0
  134. package/dist/cjs/schemas/index.d.ts +2 -0
  135. package/dist/cjs/schemas/index.js +20 -0
  136. package/dist/cjs/schemas/index.js.map +1 -0
  137. package/dist/cjs/schemas/outlook-query-schema.d.cts +53 -0
  138. package/dist/cjs/schemas/outlook-query-schema.d.ts +53 -0
  139. package/dist/cjs/schemas/outlook-query-schema.js +115 -0
  140. package/dist/cjs/schemas/outlook-query-schema.js.map +1 -0
  141. package/dist/cjs/schemas/outlook-validation.d.cts +428 -0
  142. package/dist/cjs/schemas/outlook-validation.d.ts +428 -0
  143. package/dist/cjs/schemas/outlook-validation.js +420 -0
  144. package/dist/cjs/schemas/outlook-validation.js.map +1 -0
  145. package/dist/cjs/setup/config.d.cts +50 -0
  146. package/dist/cjs/setup/config.d.ts +50 -0
  147. package/dist/cjs/setup/config.js +217 -0
  148. package/dist/cjs/setup/config.js.map +1 -0
  149. package/dist/cjs/setup/http.d.cts +8 -0
  150. package/dist/cjs/setup/http.d.ts +8 -0
  151. package/dist/cjs/setup/http.js +267 -0
  152. package/dist/cjs/setup/http.js.map +1 -0
  153. package/dist/cjs/setup/index.d.cts +5 -0
  154. package/dist/cjs/setup/index.d.ts +5 -0
  155. package/dist/cjs/setup/index.js +46 -0
  156. package/dist/cjs/setup/index.js.map +1 -0
  157. package/dist/cjs/setup/oauth-microsoft.d.cts +43 -0
  158. package/dist/cjs/setup/oauth-microsoft.d.ts +43 -0
  159. package/dist/cjs/setup/oauth-microsoft.js +366 -0
  160. package/dist/cjs/setup/oauth-microsoft.js.map +1 -0
  161. package/dist/cjs/setup/runtime.d.cts +11 -0
  162. package/dist/cjs/setup/runtime.d.ts +11 -0
  163. package/dist/cjs/setup/runtime.js +489 -0
  164. package/dist/cjs/setup/runtime.js.map +1 -0
  165. package/dist/cjs/setup/stdio.d.cts +7 -0
  166. package/dist/cjs/setup/stdio.d.ts +7 -0
  167. package/dist/cjs/setup/stdio.js +239 -0
  168. package/dist/cjs/setup/stdio.js.map +1 -0
  169. package/dist/cjs/types.d.cts +54 -0
  170. package/dist/cjs/types.d.ts +54 -0
  171. package/dist/cjs/types.js +5 -0
  172. package/dist/cjs/types.js.map +1 -0
  173. package/dist/esm/constants.d.ts +10 -0
  174. package/dist/esm/constants.js +13 -0
  175. package/dist/esm/constants.js.map +1 -0
  176. package/dist/esm/email/composition/outlook-message-builder.d.ts +36 -0
  177. package/dist/esm/email/composition/outlook-message-builder.js +46 -0
  178. package/dist/esm/email/composition/outlook-message-builder.js.map +1 -0
  179. package/dist/esm/email/messages/messages.d.ts +7 -0
  180. package/dist/esm/email/messages/messages.js +42 -0
  181. package/dist/esm/email/messages/messages.js.map +1 -0
  182. package/dist/esm/email/parsing/header-parsing.d.ts +18 -0
  183. package/dist/esm/email/parsing/header-parsing.js +18 -0
  184. package/dist/esm/email/parsing/header-parsing.js.map +1 -0
  185. package/dist/esm/email/parsing/message-extraction.d.ts +4 -0
  186. package/dist/esm/email/parsing/message-extraction.js +26 -0
  187. package/dist/esm/email/parsing/message-extraction.js.map +1 -0
  188. package/dist/esm/email/parsing/message-mapping.d.ts +21 -0
  189. package/dist/esm/email/parsing/message-mapping.js +35 -0
  190. package/dist/esm/email/parsing/message-mapping.js.map +1 -0
  191. package/dist/esm/email/querying/execute-query.d.ts +20 -0
  192. package/dist/esm/email/querying/execute-query.js +48 -0
  193. package/dist/esm/email/querying/execute-query.js.map +1 -0
  194. package/dist/esm/email/querying/query-builder.d.ts +32 -0
  195. package/dist/esm/email/querying/query-builder.js +424 -0
  196. package/dist/esm/email/querying/query-builder.js.map +1 -0
  197. package/dist/esm/email/querying/search-execution.d.ts +24 -0
  198. package/dist/esm/email/querying/search-execution.js +96 -0
  199. package/dist/esm/email/querying/search-execution.js.map +1 -0
  200. package/dist/esm/index.d.ts +8 -0
  201. package/dist/esm/index.js +34 -0
  202. package/dist/esm/index.js.map +1 -0
  203. package/dist/esm/lib/create-store.d.ts +2 -0
  204. package/dist/esm/lib/create-store.js +6 -0
  205. package/dist/esm/lib/create-store.js.map +1 -0
  206. package/dist/esm/lib/messages-to-row.d.ts +39 -0
  207. package/dist/esm/lib/messages-to-row.js +141 -0
  208. package/dist/esm/lib/messages-to-row.js.map +1 -0
  209. package/dist/esm/lib/outlook/index.d.ts +7 -0
  210. package/dist/esm/lib/outlook/index.js +7 -0
  211. package/dist/esm/lib/outlook/index.js.map +1 -0
  212. package/dist/esm/lib/outlook/types.d.ts +22 -0
  213. package/dist/esm/lib/outlook/types.js +2 -0
  214. package/dist/esm/lib/outlook/types.js.map +1 -0
  215. package/dist/esm/mcp/index.d.ts +3 -0
  216. package/dist/esm/mcp/index.js +6 -0
  217. package/dist/esm/mcp/index.js.map +1 -0
  218. package/dist/esm/mcp/prompts/draft-email.d.ts +30 -0
  219. package/dist/esm/mcp/prompts/draft-email.js +37 -0
  220. package/dist/esm/mcp/prompts/draft-email.js.map +1 -0
  221. package/dist/esm/mcp/prompts/index.d.ts +2 -0
  222. package/dist/esm/mcp/prompts/index.js +2 -0
  223. package/dist/esm/mcp/prompts/index.js.map +1 -0
  224. package/dist/esm/mcp/prompts/query-syntax.d.ts +19 -0
  225. package/dist/esm/mcp/prompts/query-syntax.js +75 -0
  226. package/dist/esm/mcp/prompts/query-syntax.js.map +1 -0
  227. package/dist/esm/mcp/resources/email.d.ts +11 -0
  228. package/dist/esm/mcp/resources/email.js +69 -0
  229. package/dist/esm/mcp/resources/email.js.map +1 -0
  230. package/dist/esm/mcp/resources/index.d.ts +1 -0
  231. package/dist/esm/mcp/resources/index.js +1 -0
  232. package/dist/esm/mcp/resources/index.js.map +1 -0
  233. package/dist/esm/mcp/tools/categories-list.d.ts +96 -0
  234. package/dist/esm/mcp/tools/categories-list.js +78 -0
  235. package/dist/esm/mcp/tools/categories-list.js.map +1 -0
  236. package/dist/esm/mcp/tools/index.d.ts +11 -0
  237. package/dist/esm/mcp/tools/index.js +11 -0
  238. package/dist/esm/mcp/tools/index.js.map +1 -0
  239. package/dist/esm/mcp/tools/label-add.d.ts +44 -0
  240. package/dist/esm/mcp/tools/label-add.js +75 -0
  241. package/dist/esm/mcp/tools/label-add.js.map +1 -0
  242. package/dist/esm/mcp/tools/label-delete.d.ts +54 -0
  243. package/dist/esm/mcp/tools/label-delete.js +166 -0
  244. package/dist/esm/mcp/tools/label-delete.js.map +1 -0
  245. package/dist/esm/mcp/tools/labels-list.d.ts +96 -0
  246. package/dist/esm/mcp/tools/labels-list.js +78 -0
  247. package/dist/esm/mcp/tools/labels-list.js.map +1 -0
  248. package/dist/esm/mcp/tools/message-get.d.ts +110 -0
  249. package/dist/esm/mcp/tools/message-get.js +117 -0
  250. package/dist/esm/mcp/tools/message-get.js.map +1 -0
  251. package/dist/esm/mcp/tools/message-mark-read.d.ts +42 -0
  252. package/dist/esm/mcp/tools/message-mark-read.js +80 -0
  253. package/dist/esm/mcp/tools/message-mark-read.js.map +1 -0
  254. package/dist/esm/mcp/tools/message-move-to-trash.d.ts +54 -0
  255. package/dist/esm/mcp/tools/message-move-to-trash.js +177 -0
  256. package/dist/esm/mcp/tools/message-move-to-trash.js.map +1 -0
  257. package/dist/esm/mcp/tools/message-respond.d.ts +52 -0
  258. package/dist/esm/mcp/tools/message-respond.js +89 -0
  259. package/dist/esm/mcp/tools/message-respond.js.map +1 -0
  260. package/dist/esm/mcp/tools/message-search.d.ts +138 -0
  261. package/dist/esm/mcp/tools/message-search.js +184 -0
  262. package/dist/esm/mcp/tools/message-search.js.map +1 -0
  263. package/dist/esm/mcp/tools/message-send.d.ts +66 -0
  264. package/dist/esm/mcp/tools/message-send.js +111 -0
  265. package/dist/esm/mcp/tools/message-send.js.map +1 -0
  266. package/dist/esm/mcp/tools/messages-export-csv.d.ts +72 -0
  267. package/dist/esm/mcp/tools/messages-export-csv.js +273 -0
  268. package/dist/esm/mcp/tools/messages-export-csv.js.map +1 -0
  269. package/dist/esm/package.json +1 -0
  270. package/dist/esm/schemas/index.d.ts +2 -0
  271. package/dist/esm/schemas/index.js +2 -0
  272. package/dist/esm/schemas/index.js.map +1 -0
  273. package/dist/esm/schemas/outlook-query-schema.d.ts +53 -0
  274. package/dist/esm/schemas/outlook-query-schema.js +63 -0
  275. package/dist/esm/schemas/outlook-query-schema.js.map +1 -0
  276. package/dist/esm/schemas/outlook-validation.d.ts +428 -0
  277. package/dist/esm/schemas/outlook-validation.js +388 -0
  278. package/dist/esm/schemas/outlook-validation.js.map +1 -0
  279. package/dist/esm/setup/config.d.ts +50 -0
  280. package/dist/esm/setup/config.js +180 -0
  281. package/dist/esm/setup/config.js.map +1 -0
  282. package/dist/esm/setup/http.d.ts +8 -0
  283. package/dist/esm/setup/http.js +61 -0
  284. package/dist/esm/setup/http.js.map +1 -0
  285. package/dist/esm/setup/index.d.ts +5 -0
  286. package/dist/esm/setup/index.js +5 -0
  287. package/dist/esm/setup/index.js.map +1 -0
  288. package/dist/esm/setup/oauth-microsoft.d.ts +43 -0
  289. package/dist/esm/setup/oauth-microsoft.js +169 -0
  290. package/dist/esm/setup/oauth-microsoft.js.map +1 -0
  291. package/dist/esm/setup/runtime.d.ts +11 -0
  292. package/dist/esm/setup/runtime.js +115 -0
  293. package/dist/esm/setup/runtime.js.map +1 -0
  294. package/dist/esm/setup/stdio.d.ts +7 -0
  295. package/dist/esm/setup/stdio.js +38 -0
  296. package/dist/esm/setup/stdio.js.map +1 -0
  297. package/dist/esm/types.d.ts +54 -0
  298. package/dist/esm/types.js +1 -0
  299. package/dist/esm/types.js.map +1 -0
  300. package/package.json +111 -0
@@ -0,0 +1,233 @@
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 createResource;
9
+ }
10
+ });
11
+ var _email = require("@mcp-z/email");
12
+ var _microsoftgraphclient = require("@microsoft/microsoft-graph-client");
13
+ var _mcp = require("@modelcontextprotocol/sdk/server/mcp.js");
14
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
15
+ try {
16
+ var info = gen[key](arg);
17
+ var value = info.value;
18
+ } catch (error) {
19
+ reject(error);
20
+ return;
21
+ }
22
+ if (info.done) {
23
+ resolve(value);
24
+ } else {
25
+ Promise.resolve(value).then(_next, _throw);
26
+ }
27
+ }
28
+ function _async_to_generator(fn) {
29
+ return function() {
30
+ var self = this, args = arguments;
31
+ return new Promise(function(resolve, reject) {
32
+ var gen = fn.apply(self, args);
33
+ function _next(value) {
34
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
35
+ }
36
+ function _throw(err) {
37
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
38
+ }
39
+ _next(undefined);
40
+ });
41
+ };
42
+ }
43
+ function _ts_generator(thisArg, body) {
44
+ var f, y, t, _ = {
45
+ label: 0,
46
+ sent: function() {
47
+ if (t[0] & 1) throw t[1];
48
+ return t[1];
49
+ },
50
+ trys: [],
51
+ ops: []
52
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
53
+ return d(g, "next", {
54
+ value: verb(0)
55
+ }), d(g, "throw", {
56
+ value: verb(1)
57
+ }), d(g, "return", {
58
+ value: verb(2)
59
+ }), typeof Symbol === "function" && d(g, Symbol.iterator, {
60
+ value: function() {
61
+ return this;
62
+ }
63
+ }), g;
64
+ function verb(n) {
65
+ return function(v) {
66
+ return step([
67
+ n,
68
+ v
69
+ ]);
70
+ };
71
+ }
72
+ function step(op) {
73
+ if (f) throw new TypeError("Generator is already executing.");
74
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
75
+ 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;
76
+ if (y = 0, t) op = [
77
+ op[0] & 2,
78
+ t.value
79
+ ];
80
+ switch(op[0]){
81
+ case 0:
82
+ case 1:
83
+ t = op;
84
+ break;
85
+ case 4:
86
+ _.label++;
87
+ return {
88
+ value: op[1],
89
+ done: false
90
+ };
91
+ case 5:
92
+ _.label++;
93
+ y = op[1];
94
+ op = [
95
+ 0
96
+ ];
97
+ continue;
98
+ case 7:
99
+ op = _.ops.pop();
100
+ _.trys.pop();
101
+ continue;
102
+ default:
103
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
104
+ _ = 0;
105
+ continue;
106
+ }
107
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
108
+ _.label = op[1];
109
+ break;
110
+ }
111
+ if (op[0] === 6 && _.label < t[1]) {
112
+ _.label = t[1];
113
+ t = op;
114
+ break;
115
+ }
116
+ if (t && _.label < t[2]) {
117
+ _.label = t[2];
118
+ _.ops.push(op);
119
+ break;
120
+ }
121
+ if (t[2]) _.ops.pop();
122
+ _.trys.pop();
123
+ continue;
124
+ }
125
+ op = body.call(thisArg, _);
126
+ } catch (e) {
127
+ op = [
128
+ 6,
129
+ e
130
+ ];
131
+ y = 0;
132
+ } finally{
133
+ f = t = 0;
134
+ }
135
+ if (op[0] & 5) throw op[1];
136
+ return {
137
+ value: op[0] ? op[1] : void 0,
138
+ done: true
139
+ };
140
+ }
141
+ }
142
+ function createResource() {
143
+ var template = new _mcp.ResourceTemplate('outlook://messages/{id}', {
144
+ list: undefined
145
+ });
146
+ var config = {
147
+ description: 'Outlook message metadata (lightweight: id, subject, from, to, date)',
148
+ mimeType: 'application/json'
149
+ };
150
+ var handler = function(uri, variables, extra) {
151
+ return _async_to_generator(function() {
152
+ var _message_id, _message_subject, _ref, _message_toRecipients, _message_from_emailAddress, _message_from, logger, authContext, graph, message, toAddresses, toStr, metadata, e, _ref1, logger1, error;
153
+ return _ts_generator(this, function(_state) {
154
+ switch(_state.label){
155
+ case 0:
156
+ _state.trys.push([
157
+ 0,
158
+ 2,
159
+ ,
160
+ 3
161
+ ]);
162
+ logger = extra.logger, authContext = extra.authContext;
163
+ logger.info(variables, 'outlook-email resource fetch');
164
+ graph = _microsoftgraphclient.Client.initWithMiddleware({
165
+ authProvider: authContext.auth
166
+ });
167
+ return [
168
+ 4,
169
+ graph.api("/me/messages/".concat(encodeURIComponent(variables.id))).get()
170
+ ];
171
+ case 1:
172
+ message = _state.sent();
173
+ // Build message data
174
+ toAddresses = (_message_toRecipients = message.toRecipients) === null || _message_toRecipients === void 0 ? void 0 : _message_toRecipients.map(function(r) {
175
+ var _r_emailAddress;
176
+ return (_r_emailAddress = r.emailAddress) === null || _r_emailAddress === void 0 ? void 0 : _r_emailAddress.address;
177
+ }).filter(Boolean);
178
+ toStr = toAddresses && toAddresses.length > 0 ? toAddresses.join(', ') : '';
179
+ // Return lightweight metadata only (no body/snippet)
180
+ metadata = {
181
+ id: (_message_id = message.id) !== null && _message_id !== void 0 ? _message_id : variables.id,
182
+ subject: (_message_subject = message.subject) !== null && _message_subject !== void 0 ? _message_subject : '',
183
+ from: (_ref = (_message_from = message.from) === null || _message_from === void 0 ? void 0 : (_message_from_emailAddress = _message_from.emailAddress) === null || _message_from_emailAddress === void 0 ? void 0 : _message_from_emailAddress.address) !== null && _ref !== void 0 ? _ref : '',
184
+ to: toStr,
185
+ date: (0, _email.normalizeDateToISO)(message.receivedDateTime) || message.receivedDateTime || ''
186
+ };
187
+ return [
188
+ 2,
189
+ {
190
+ contents: [
191
+ {
192
+ uri: uri.href,
193
+ mimeType: 'application/json',
194
+ text: JSON.stringify(metadata)
195
+ }
196
+ ]
197
+ }
198
+ ];
199
+ case 2:
200
+ e = _state.sent();
201
+ logger1 = extra.logger;
202
+ logger1.error(e, 'outlook-email resource fetch failed');
203
+ error = e;
204
+ return [
205
+ 2,
206
+ {
207
+ contents: [
208
+ {
209
+ uri: uri.href,
210
+ mimeType: 'application/json',
211
+ text: JSON.stringify({
212
+ error: String((_ref1 = error === null || error === void 0 ? void 0 : error.message) !== null && _ref1 !== void 0 ? _ref1 : e)
213
+ })
214
+ }
215
+ ]
216
+ }
217
+ ];
218
+ case 3:
219
+ return [
220
+ 2
221
+ ];
222
+ }
223
+ });
224
+ })();
225
+ };
226
+ return {
227
+ name: 'email',
228
+ template: template,
229
+ config: config,
230
+ handler: handler
231
+ };
232
+ }
233
+ /* 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-outlook/src/mcp/resources/email.ts"],"sourcesContent":["import { normalizeDateToISO as toIsoUtc } from '@mcp-z/email';\nimport type { EnrichedExtra } from '@mcp-z/oauth-microsoft';\nimport type { ResourceConfig, ResourceModule } from '@mcp-z/server';\nimport { Client } from '@microsoft/microsoft-graph-client';\nimport type * as MicrosoftGraph from '@microsoft/microsoft-graph-types';\nimport { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport type { RequestHandlerExtra } from '@modelcontextprotocol/sdk/shared/protocol.js';\nimport type { ReadResourceResult, ServerNotification, ServerRequest } from '@modelcontextprotocol/sdk/types.js';\n\nexport default function createResource() {\n const template = new ResourceTemplate('outlook://messages/{id}', {\n list: undefined,\n });\n const config: ResourceConfig = {\n description: 'Outlook message metadata (lightweight: id, subject, from, to, date)',\n mimeType: 'application/json',\n };\n\n const handler = async (uri: URL, variables: { id: string }, extra: RequestHandlerExtra<ServerRequest, ServerNotification>): Promise<ReadResourceResult> => {\n try {\n const { logger, authContext } = extra as unknown as EnrichedExtra;\n\n logger.info(variables, 'outlook-email resource fetch');\n\n const graph = Client.initWithMiddleware({ authProvider: authContext.auth });\n const message = (await graph.api(`/me/messages/${encodeURIComponent(variables.id)}`).get()) as MicrosoftGraph.Message;\n\n // Build message data\n const toAddresses = message.toRecipients?.map((r) => r.emailAddress?.address).filter(Boolean);\n const toStr = toAddresses && toAddresses.length > 0 ? toAddresses.join(', ') : '';\n\n // Return lightweight metadata only (no body/snippet)\n const metadata = {\n id: message.id ?? variables.id,\n subject: message.subject ?? '',\n from: message.from?.emailAddress?.address ?? '',\n to: toStr,\n date: toIsoUtc(message.receivedDateTime) || message.receivedDateTime || '',\n };\n\n return {\n contents: [\n {\n uri: uri.href,\n mimeType: 'application/json',\n text: JSON.stringify(metadata),\n },\n ],\n };\n } catch (e) {\n const { logger } = extra as unknown as EnrichedExtra;\n logger.error(e as Record<string, unknown>, 'outlook-email resource fetch failed');\n const error = e as { message?: unknown };\n return {\n contents: [\n {\n uri: uri.href,\n mimeType: 'application/json',\n text: JSON.stringify({ error: String(error?.message ?? e) }),\n },\n ],\n };\n }\n };\n\n return {\n name: 'email',\n template,\n config,\n handler,\n } satisfies ResourceModule;\n}\n"],"names":["createResource","template","ResourceTemplate","list","undefined","config","description","mimeType","handler","uri","variables","extra","message","logger","authContext","graph","toAddresses","toStr","metadata","e","error","info","Client","initWithMiddleware","authProvider","auth","api","encodeURIComponent","id","get","toRecipients","map","r","emailAddress","address","filter","Boolean","length","join","subject","from","to","date","toIsoUtc","receivedDateTime","contents","href","text","JSON","stringify","String","name"],"mappings":";;;;+BASA;;;eAAwBA;;;qBATuB;oCAGxB;mBAEU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIlB,SAASA;IACtB,IAAMC,WAAW,IAAIC,qBAAgB,CAAC,2BAA2B;QAC/DC,MAAMC;IACR;IACA,IAAMC,SAAyB;QAC7BC,aAAa;QACbC,UAAU;IACZ;IAEA,IAAMC,UAAU,SAAOC,KAAUC,WAA2BC;;gBAelDC,aACKA,wBANSA,uBAOZA,4BAAAA,eAfAC,QAAQC,aAIVC,OACAH,SAGAI,aACAC,OAGAC,UAiBCC,UACCN,SAEFO;;;;;;;;;;wBAhCEP,SAAwBF,MAAxBE,QAAQC,cAAgBH,MAAhBG;wBAEhBD,OAAOQ,IAAI,CAACX,WAAW;wBAEjBK,QAAQO,4BAAM,CAACC,kBAAkB,CAAC;4BAAEC,cAAcV,YAAYW,IAAI;wBAAC;wBACxD;;4BAAMV,MAAMW,GAAG,CAAC,AAAC,gBAAgD,OAAjCC,mBAAmBjB,UAAUkB,EAAE,IAAKC,GAAG;;;wBAAlFjB,UAAW;wBAEjB,qBAAqB;wBACfI,eAAcJ,wBAAAA,QAAQkB,YAAY,cAApBlB,4CAAAA,sBAAsBmB,GAAG,CAAC,SAACC;gCAAMA;oCAAAA,kBAAAA,EAAEC,YAAY,cAAdD,sCAAAA,gBAAgBE,OAAO;2BAAEC,MAAM,CAACC;wBAC/EnB,QAAQD,eAAeA,YAAYqB,MAAM,GAAG,IAAIrB,YAAYsB,IAAI,CAAC,QAAQ;wBAE/E,qDAAqD;wBAC/CpB,WAAW;4BACfU,EAAE,GAAEhB,cAAAA,QAAQgB,EAAE,cAAVhB,yBAAAA,cAAcF,UAAUkB,EAAE;4BAC9BW,OAAO,GAAE3B,mBAAAA,QAAQ2B,OAAO,cAAf3B,8BAAAA,mBAAmB;4BAC5B4B,IAAI,WAAE5B,gBAAAA,QAAQ4B,IAAI,cAAZ5B,qCAAAA,6BAAAA,cAAcqB,YAAY,cAA1BrB,iDAAAA,2BAA4BsB,OAAO,uCAAI;4BAC7CO,IAAIxB;4BACJyB,MAAMC,IAAAA,yBAAQ,EAAC/B,QAAQgC,gBAAgB,KAAKhC,QAAQgC,gBAAgB,IAAI;wBAC1E;wBAEA;;4BAAO;gCACLC,QAAQ;oCACN;wCACEpC,KAAKA,IAAIqC,IAAI;wCACbvC,UAAU;wCACVwC,MAAMC,KAAKC,SAAS,CAAC/B;oCACvB;;4BAEJ;;;wBACOC;wBACCN,UAAWF,MAAXE;wBACRA,QAAOO,KAAK,CAACD,GAA8B;wBACrCC,QAAQD;wBACd;;4BAAO;gCACL0B,QAAQ;oCACN;wCACEpC,KAAKA,IAAIqC,IAAI;wCACbvC,UAAU;wCACVwC,MAAMC,KAAKC,SAAS,CAAC;4CAAE7B,OAAO8B,gBAAO9B,kBAAAA,4BAAAA,MAAOR,OAAO,yCAAIO;wCAAG;oCAC5D;;4BAEJ;;;;;;;;QAEJ;;IAEA,OAAO;QACLgC,MAAM;QACNlD,UAAAA;QACAI,QAAAA;QACAG,SAAAA;IACF;AACF"}
@@ -0,0 +1 @@
1
+ export { default as email } from './email.js';
@@ -0,0 +1 @@
1
+ export { default as email } from './email.js';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "email", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _email.default;
9
+ }
10
+ });
11
+ var _email = /*#__PURE__*/ _interop_require_default(require("./email.js"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ /* 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-outlook/src/mcp/resources/index.ts"],"sourcesContent":["export { default as email } from './email.js';\n"],"names":["email"],"mappings":";;;;+BAAoBA;;;eAAAA,cAAK;;;4DAAQ"}
@@ -0,0 +1,96 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-microsoft';
2
+ import { type CallToolResult } from '@modelcontextprotocol/sdk/types.js';
3
+ import { z } from 'zod';
4
+ declare const inputSchema: z.ZodObject<{}, z.core.$strip>;
5
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6
+ type: z.ZodLiteral<"success">;
7
+ items: z.ZodArray<z.ZodObject<{
8
+ id: z.ZodString;
9
+ displayName: z.ZodString;
10
+ color: z.ZodEnum<{
11
+ preset0: "preset0";
12
+ preset1: "preset1";
13
+ preset2: "preset2";
14
+ preset3: "preset3";
15
+ preset4: "preset4";
16
+ preset5: "preset5";
17
+ preset6: "preset6";
18
+ preset7: "preset7";
19
+ preset8: "preset8";
20
+ preset9: "preset9";
21
+ preset10: "preset10";
22
+ preset11: "preset11";
23
+ preset12: "preset12";
24
+ preset13: "preset13";
25
+ preset14: "preset14";
26
+ preset15: "preset15";
27
+ preset16: "preset16";
28
+ preset17: "preset17";
29
+ preset18: "preset18";
30
+ preset19: "preset19";
31
+ preset20: "preset20";
32
+ preset21: "preset21";
33
+ preset22: "preset22";
34
+ preset23: "preset23";
35
+ preset24: "preset24";
36
+ }>;
37
+ }, z.core.$strip>>;
38
+ }, z.core.$strip>, z.ZodObject<{
39
+ type: z.ZodLiteral<"auth_required">;
40
+ provider: z.ZodString;
41
+ message: z.ZodString;
42
+ url: z.ZodOptional<z.ZodString>;
43
+ }, z.core.$strip>], "type">;
44
+ export type Input = z.infer<typeof inputSchema>;
45
+ export type Output = z.infer<typeof outputSchema>;
46
+ declare function handler(_: Input, extra: EnrichedExtra): Promise<CallToolResult>;
47
+ export default function createTool(): {
48
+ name: string;
49
+ config: {
50
+ readonly description: "List Outlook categories with colors and names.";
51
+ readonly inputSchema: z.ZodObject<{}, z.core.$strip>;
52
+ readonly outputSchema: z.ZodObject<{
53
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
54
+ type: z.ZodLiteral<"success">;
55
+ items: z.ZodArray<z.ZodObject<{
56
+ id: z.ZodString;
57
+ displayName: z.ZodString;
58
+ color: z.ZodEnum<{
59
+ preset0: "preset0";
60
+ preset1: "preset1";
61
+ preset2: "preset2";
62
+ preset3: "preset3";
63
+ preset4: "preset4";
64
+ preset5: "preset5";
65
+ preset6: "preset6";
66
+ preset7: "preset7";
67
+ preset8: "preset8";
68
+ preset9: "preset9";
69
+ preset10: "preset10";
70
+ preset11: "preset11";
71
+ preset12: "preset12";
72
+ preset13: "preset13";
73
+ preset14: "preset14";
74
+ preset15: "preset15";
75
+ preset16: "preset16";
76
+ preset17: "preset17";
77
+ preset18: "preset18";
78
+ preset19: "preset19";
79
+ preset20: "preset20";
80
+ preset21: "preset21";
81
+ preset22: "preset22";
82
+ preset23: "preset23";
83
+ preset24: "preset24";
84
+ }>;
85
+ }, z.core.$strip>>;
86
+ }, z.core.$strip>, z.ZodObject<{
87
+ type: z.ZodLiteral<"auth_required">;
88
+ provider: z.ZodString;
89
+ message: z.ZodString;
90
+ url: z.ZodOptional<z.ZodString>;
91
+ }, z.core.$strip>], "type">;
92
+ }, z.core.$strip>;
93
+ };
94
+ handler: typeof handler;
95
+ };
96
+ export {};
@@ -0,0 +1,96 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-microsoft';
2
+ import { type CallToolResult } from '@modelcontextprotocol/sdk/types.js';
3
+ import { z } from 'zod';
4
+ declare const inputSchema: z.ZodObject<{}, z.core.$strip>;
5
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6
+ type: z.ZodLiteral<"success">;
7
+ items: z.ZodArray<z.ZodObject<{
8
+ id: z.ZodString;
9
+ displayName: z.ZodString;
10
+ color: z.ZodEnum<{
11
+ preset0: "preset0";
12
+ preset1: "preset1";
13
+ preset2: "preset2";
14
+ preset3: "preset3";
15
+ preset4: "preset4";
16
+ preset5: "preset5";
17
+ preset6: "preset6";
18
+ preset7: "preset7";
19
+ preset8: "preset8";
20
+ preset9: "preset9";
21
+ preset10: "preset10";
22
+ preset11: "preset11";
23
+ preset12: "preset12";
24
+ preset13: "preset13";
25
+ preset14: "preset14";
26
+ preset15: "preset15";
27
+ preset16: "preset16";
28
+ preset17: "preset17";
29
+ preset18: "preset18";
30
+ preset19: "preset19";
31
+ preset20: "preset20";
32
+ preset21: "preset21";
33
+ preset22: "preset22";
34
+ preset23: "preset23";
35
+ preset24: "preset24";
36
+ }>;
37
+ }, z.core.$strip>>;
38
+ }, z.core.$strip>, z.ZodObject<{
39
+ type: z.ZodLiteral<"auth_required">;
40
+ provider: z.ZodString;
41
+ message: z.ZodString;
42
+ url: z.ZodOptional<z.ZodString>;
43
+ }, z.core.$strip>], "type">;
44
+ export type Input = z.infer<typeof inputSchema>;
45
+ export type Output = z.infer<typeof outputSchema>;
46
+ declare function handler(_: Input, extra: EnrichedExtra): Promise<CallToolResult>;
47
+ export default function createTool(): {
48
+ name: string;
49
+ config: {
50
+ readonly description: "List Outlook categories with colors and names.";
51
+ readonly inputSchema: z.ZodObject<{}, z.core.$strip>;
52
+ readonly outputSchema: z.ZodObject<{
53
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
54
+ type: z.ZodLiteral<"success">;
55
+ items: z.ZodArray<z.ZodObject<{
56
+ id: z.ZodString;
57
+ displayName: z.ZodString;
58
+ color: z.ZodEnum<{
59
+ preset0: "preset0";
60
+ preset1: "preset1";
61
+ preset2: "preset2";
62
+ preset3: "preset3";
63
+ preset4: "preset4";
64
+ preset5: "preset5";
65
+ preset6: "preset6";
66
+ preset7: "preset7";
67
+ preset8: "preset8";
68
+ preset9: "preset9";
69
+ preset10: "preset10";
70
+ preset11: "preset11";
71
+ preset12: "preset12";
72
+ preset13: "preset13";
73
+ preset14: "preset14";
74
+ preset15: "preset15";
75
+ preset16: "preset16";
76
+ preset17: "preset17";
77
+ preset18: "preset18";
78
+ preset19: "preset19";
79
+ preset20: "preset20";
80
+ preset21: "preset21";
81
+ preset22: "preset22";
82
+ preset23: "preset23";
83
+ preset24: "preset24";
84
+ }>;
85
+ }, z.core.$strip>>;
86
+ }, z.core.$strip>, z.ZodObject<{
87
+ type: z.ZodLiteral<"auth_required">;
88
+ provider: z.ZodString;
89
+ message: z.ZodString;
90
+ url: z.ZodOptional<z.ZodString>;
91
+ }, z.core.$strip>], "type">;
92
+ }, z.core.$strip>;
93
+ };
94
+ handler: typeof handler;
95
+ };
96
+ export {};