@jbctechsolutions/mcp-office365 2.5.1 → 4.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 (369) hide show
  1. package/README.md +66 -57
  2. package/dist/approval/hash.d.ts +8 -8
  3. package/dist/approval/token-manager.d.ts +37 -19
  4. package/dist/approval/token-manager.d.ts.map +1 -1
  5. package/dist/approval/token-manager.js +133 -37
  6. package/dist/approval/token-manager.js.map +1 -1
  7. package/dist/approval/types.d.ts +7 -3
  8. package/dist/approval/types.d.ts.map +1 -1
  9. package/dist/cli.d.ts +21 -0
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +100 -2
  12. package/dist/cli.js.map +1 -1
  13. package/dist/database/repository.d.ts +48 -48
  14. package/dist/database/repository.d.ts.map +1 -1
  15. package/dist/database/repository.js.map +1 -1
  16. package/dist/delta/mirror.d.ts +67 -0
  17. package/dist/delta/mirror.d.ts.map +1 -0
  18. package/dist/delta/mirror.js +183 -0
  19. package/dist/delta/mirror.js.map +1 -0
  20. package/dist/graph/auth/account-id.d.ts +19 -0
  21. package/dist/graph/auth/account-id.d.ts.map +1 -0
  22. package/dist/graph/auth/account-id.js +55 -0
  23. package/dist/graph/auth/account-id.js.map +1 -0
  24. package/dist/graph/auth/config.d.ts +1 -1
  25. package/dist/graph/auth/config.d.ts.map +1 -1
  26. package/dist/graph/auth/config.js +13 -1
  27. package/dist/graph/auth/config.js.map +1 -1
  28. package/dist/graph/auth/device-code-flow.d.ts +3 -1
  29. package/dist/graph/auth/device-code-flow.d.ts.map +1 -1
  30. package/dist/graph/auth/device-code-flow.js +42 -14
  31. package/dist/graph/auth/device-code-flow.js.map +1 -1
  32. package/dist/graph/auth/index.d.ts +1 -0
  33. package/dist/graph/auth/index.d.ts.map +1 -1
  34. package/dist/graph/auth/index.js +1 -0
  35. package/dist/graph/auth/index.js.map +1 -1
  36. package/dist/graph/auth/token-cache.js +2 -2
  37. package/dist/graph/auth/token-cache.js.map +1 -1
  38. package/dist/graph/client/graph-client.d.ts +141 -8
  39. package/dist/graph/client/graph-client.d.ts.map +1 -1
  40. package/dist/graph/client/graph-client.js +536 -48
  41. package/dist/graph/client/graph-client.js.map +1 -1
  42. package/dist/graph/client/immutable-id-middleware.d.ts +50 -0
  43. package/dist/graph/client/immutable-id-middleware.d.ts.map +1 -0
  44. package/dist/graph/client/immutable-id-middleware.js +137 -0
  45. package/dist/graph/client/immutable-id-middleware.js.map +1 -0
  46. package/dist/graph/content-readers.d.ts +0 -12
  47. package/dist/graph/content-readers.d.ts.map +1 -1
  48. package/dist/graph/content-readers.js +0 -21
  49. package/dist/graph/content-readers.js.map +1 -1
  50. package/dist/graph/index.d.ts +5 -6
  51. package/dist/graph/index.d.ts.map +1 -1
  52. package/dist/graph/index.js +5 -6
  53. package/dist/graph/index.js.map +1 -1
  54. package/dist/graph/mailbox-adapter.d.ts +15 -15
  55. package/dist/graph/mappers/contact-mapper.d.ts +4 -1
  56. package/dist/graph/mappers/contact-mapper.d.ts.map +1 -1
  57. package/dist/graph/mappers/contact-mapper.js +7 -3
  58. package/dist/graph/mappers/contact-mapper.js.map +1 -1
  59. package/dist/graph/mappers/email-mapper.d.ts.map +1 -1
  60. package/dist/graph/mappers/email-mapper.js +7 -4
  61. package/dist/graph/mappers/email-mapper.js.map +1 -1
  62. package/dist/graph/mappers/event-mapper.d.ts.map +1 -1
  63. package/dist/graph/mappers/event-mapper.js +6 -3
  64. package/dist/graph/mappers/event-mapper.js.map +1 -1
  65. package/dist/graph/mappers/folder-mapper.d.ts +0 -4
  66. package/dist/graph/mappers/folder-mapper.d.ts.map +1 -1
  67. package/dist/graph/mappers/folder-mapper.js +9 -19
  68. package/dist/graph/mappers/folder-mapper.js.map +1 -1
  69. package/dist/graph/mappers/index.d.ts +2 -2
  70. package/dist/graph/mappers/index.d.ts.map +1 -1
  71. package/dist/graph/mappers/index.js +2 -2
  72. package/dist/graph/mappers/index.js.map +1 -1
  73. package/dist/graph/mappers/task-mapper.d.ts +4 -2
  74. package/dist/graph/mappers/task-mapper.d.ts.map +1 -1
  75. package/dist/graph/mappers/task-mapper.js +7 -5
  76. package/dist/graph/mappers/task-mapper.js.map +1 -1
  77. package/dist/graph/mappers/utils.d.ts +0 -10
  78. package/dist/graph/mappers/utils.d.ts.map +1 -1
  79. package/dist/graph/mappers/utils.js +0 -19
  80. package/dist/graph/mappers/utils.js.map +1 -1
  81. package/dist/graph/repository.d.ts +409 -276
  82. package/dist/graph/repository.d.ts.map +1 -1
  83. package/dist/graph/repository.js +772 -1082
  84. package/dist/graph/repository.js.map +1 -1
  85. package/dist/ids/mint.d.ts +31 -0
  86. package/dist/ids/mint.d.ts.map +1 -0
  87. package/dist/ids/mint.js +36 -0
  88. package/dist/ids/mint.js.map +1 -0
  89. package/dist/ids/next-action.d.ts +29 -0
  90. package/dist/ids/next-action.d.ts.map +1 -0
  91. package/dist/ids/next-action.js +58 -0
  92. package/dist/ids/next-action.js.map +1 -0
  93. package/dist/ids/resolver.d.ts +31 -0
  94. package/dist/ids/resolver.d.ts.map +1 -0
  95. package/dist/ids/resolver.js +52 -0
  96. package/dist/ids/resolver.js.map +1 -0
  97. package/dist/ids/schema.d.ts +91 -0
  98. package/dist/ids/schema.d.ts.map +1 -0
  99. package/dist/ids/schema.js +131 -0
  100. package/dist/ids/schema.js.map +1 -0
  101. package/dist/ids/token.d.ts +62 -0
  102. package/dist/ids/token.d.ts.map +1 -0
  103. package/dist/ids/token.js +225 -0
  104. package/dist/ids/token.js.map +1 -0
  105. package/dist/index.d.ts +10 -6
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +255 -5925
  108. package/dist/index.js.map +1 -1
  109. package/dist/parsers/index.d.ts +0 -1
  110. package/dist/parsers/index.d.ts.map +1 -1
  111. package/dist/parsers/index.js +0 -1
  112. package/dist/parsers/index.js.map +1 -1
  113. package/dist/registry/all-tools.d.ts +14 -0
  114. package/dist/registry/all-tools.d.ts.map +1 -0
  115. package/dist/registry/all-tools.js +68 -0
  116. package/dist/registry/all-tools.js.map +1 -0
  117. package/dist/registry/context.d.ts +19 -0
  118. package/dist/registry/context.d.ts.map +1 -0
  119. package/dist/registry/context.js +20 -0
  120. package/dist/registry/context.js.map +1 -0
  121. package/dist/registry/define-tool.d.ts +15 -0
  122. package/dist/registry/define-tool.d.ts.map +1 -0
  123. package/dist/registry/define-tool.js +8 -0
  124. package/dist/registry/define-tool.js.map +1 -0
  125. package/dist/registry/elicit-links.d.ts +35 -0
  126. package/dist/registry/elicit-links.d.ts.map +1 -0
  127. package/dist/registry/elicit-links.js +102 -0
  128. package/dist/registry/elicit-links.js.map +1 -0
  129. package/dist/registry/elicitor.d.ts +24 -0
  130. package/dist/registry/elicitor.d.ts.map +1 -0
  131. package/dist/registry/elicitor.js +51 -0
  132. package/dist/registry/elicitor.js.map +1 -0
  133. package/dist/registry/index.d.ts +13 -0
  134. package/dist/registry/index.d.ts.map +1 -0
  135. package/dist/registry/index.js +8 -0
  136. package/dist/registry/index.js.map +1 -0
  137. package/dist/registry/registry.d.ts +73 -0
  138. package/dist/registry/registry.d.ts.map +1 -0
  139. package/dist/registry/registry.js +221 -0
  140. package/dist/registry/registry.js.map +1 -0
  141. package/dist/registry/types.d.ts +146 -0
  142. package/dist/registry/types.d.ts.map +1 -0
  143. package/dist/registry/types.js +6 -0
  144. package/dist/registry/types.js.map +1 -0
  145. package/dist/search/compiler.d.ts +49 -0
  146. package/dist/search/compiler.d.ts.map +1 -0
  147. package/dist/search/compiler.js +168 -0
  148. package/dist/search/compiler.js.map +1 -0
  149. package/dist/signature.js +2 -2
  150. package/dist/signature.js.map +1 -1
  151. package/dist/state/delta-store.d.ts +85 -0
  152. package/dist/state/delta-store.d.ts.map +1 -0
  153. package/dist/state/delta-store.js +124 -0
  154. package/dist/state/delta-store.js.map +1 -0
  155. package/dist/state/migrate.d.ts +23 -0
  156. package/dist/state/migrate.d.ts.map +1 -0
  157. package/dist/state/migrate.js +81 -0
  158. package/dist/state/migrate.js.map +1 -0
  159. package/dist/state/schema.d.ts +26 -0
  160. package/dist/state/schema.d.ts.map +1 -0
  161. package/dist/state/schema.js +77 -0
  162. package/dist/state/schema.js.map +1 -0
  163. package/dist/state/store.d.ts +155 -0
  164. package/dist/state/store.d.ts.map +1 -0
  165. package/dist/state/store.js +321 -0
  166. package/dist/state/store.js.map +1 -0
  167. package/dist/tools/calendar-graph.d.ts +41 -0
  168. package/dist/tools/calendar-graph.d.ts.map +1 -0
  169. package/dist/tools/calendar-graph.js +299 -0
  170. package/dist/tools/calendar-graph.js.map +1 -0
  171. package/dist/tools/calendar-permissions.d.ts +17 -7
  172. package/dist/tools/calendar-permissions.d.ts.map +1 -1
  173. package/dist/tools/calendar-permissions.js +60 -4
  174. package/dist/tools/calendar-permissions.js.map +1 -1
  175. package/dist/tools/calendar.d.ts +133 -82
  176. package/dist/tools/calendar.d.ts.map +1 -1
  177. package/dist/tools/calendar.js +249 -136
  178. package/dist/tools/calendar.js.map +1 -1
  179. package/dist/tools/categories.d.ts +14 -4
  180. package/dist/tools/categories.d.ts.map +1 -1
  181. package/dist/tools/categories.js +59 -2
  182. package/dist/tools/categories.js.map +1 -1
  183. package/dist/tools/checklist-items.d.ts +19 -9
  184. package/dist/tools/checklist-items.d.ts.map +1 -1
  185. package/dist/tools/checklist-items.js +71 -5
  186. package/dist/tools/checklist-items.js.map +1 -1
  187. package/dist/tools/contact-folders.d.ts +50 -0
  188. package/dist/tools/contact-folders.d.ts.map +1 -0
  189. package/dist/tools/contact-folders.js +136 -0
  190. package/dist/tools/contact-folders.js.map +1 -0
  191. package/dist/tools/contacts-graph.d.ts +45 -0
  192. package/dist/tools/contacts-graph.d.ts.map +1 -0
  193. package/dist/tools/contacts-graph.js +174 -0
  194. package/dist/tools/contacts-graph.js.map +1 -0
  195. package/dist/tools/contacts.d.ts +61 -30
  196. package/dist/tools/contacts.d.ts.map +1 -1
  197. package/dist/tools/contacts.js +150 -93
  198. package/dist/tools/contacts.js.map +1 -1
  199. package/dist/tools/excel.d.ts +20 -10
  200. package/dist/tools/excel.d.ts.map +1 -1
  201. package/dist/tools/excel.js +82 -6
  202. package/dist/tools/excel.js.map +1 -1
  203. package/dist/tools/focused-overrides.d.ts +14 -4
  204. package/dist/tools/focused-overrides.d.ts.map +1 -1
  205. package/dist/tools/focused-overrides.js +59 -2
  206. package/dist/tools/focused-overrides.js.map +1 -1
  207. package/dist/tools/index.d.ts +4 -5
  208. package/dist/tools/index.d.ts.map +1 -1
  209. package/dist/tools/index.js +4 -6
  210. package/dist/tools/index.js.map +1 -1
  211. package/dist/tools/linked-resources.d.ts +17 -7
  212. package/dist/tools/linked-resources.d.ts.map +1 -1
  213. package/dist/tools/linked-resources.js +60 -4
  214. package/dist/tools/linked-resources.js.map +1 -1
  215. package/dist/tools/mail-graph.d.ts +38 -0
  216. package/dist/tools/mail-graph.d.ts.map +1 -0
  217. package/dist/tools/mail-graph.js +187 -0
  218. package/dist/tools/mail-graph.js.map +1 -0
  219. package/dist/tools/mail-rules.d.ts +20 -8
  220. package/dist/tools/mail-rules.d.ts.map +1 -1
  221. package/dist/tools/mail-rules.js +63 -7
  222. package/dist/tools/mail-rules.js.map +1 -1
  223. package/dist/tools/mail-send.d.ts +39 -27
  224. package/dist/tools/mail-send.d.ts.map +1 -1
  225. package/dist/tools/mail-send.js +249 -24
  226. package/dist/tools/mail-send.js.map +1 -1
  227. package/dist/tools/mail.d.ts +91 -68
  228. package/dist/tools/mail.d.ts.map +1 -1
  229. package/dist/tools/mail.js +232 -243
  230. package/dist/tools/mail.js.map +1 -1
  231. package/dist/tools/mailbox-organization.d.ts +51 -34
  232. package/dist/tools/mailbox-organization.d.ts.map +1 -1
  233. package/dist/tools/mailbox-organization.js +318 -35
  234. package/dist/tools/mailbox-organization.js.map +1 -1
  235. package/dist/tools/mailbox-settings.d.ts +59 -0
  236. package/dist/tools/mailbox-settings.d.ts.map +1 -0
  237. package/dist/tools/mailbox-settings.js +136 -0
  238. package/dist/tools/mailbox-settings.js.map +1 -0
  239. package/dist/tools/meetings.d.ts +24 -14
  240. package/dist/tools/meetings.d.ts.map +1 -1
  241. package/dist/tools/meetings.js +82 -6
  242. package/dist/tools/meetings.js.map +1 -1
  243. package/dist/tools/onedrive.d.ts +26 -16
  244. package/dist/tools/onedrive.d.ts.map +1 -1
  245. package/dist/tools/onedrive.js +140 -11
  246. package/dist/tools/onedrive.js.map +1 -1
  247. package/dist/tools/onenote.d.ts +63 -0
  248. package/dist/tools/onenote.d.ts.map +1 -0
  249. package/dist/tools/onenote.js +221 -0
  250. package/dist/tools/onenote.js.map +1 -0
  251. package/dist/tools/people.d.ts +10 -0
  252. package/dist/tools/people.d.ts.map +1 -1
  253. package/dist/tools/people.js +94 -0
  254. package/dist/tools/people.js.map +1 -1
  255. package/dist/tools/planner-visualization.d.ts +15 -5
  256. package/dist/tools/planner-visualization.d.ts.map +1 -1
  257. package/dist/tools/planner-visualization.js +58 -4
  258. package/dist/tools/planner-visualization.js.map +1 -1
  259. package/dist/tools/planner.d.ts +69 -39
  260. package/dist/tools/planner.d.ts.map +1 -1
  261. package/dist/tools/planner.js +231 -23
  262. package/dist/tools/planner.js.map +1 -1
  263. package/dist/tools/scheduling.d.ts +12 -0
  264. package/dist/tools/scheduling.d.ts.map +1 -1
  265. package/dist/tools/scheduling.js +38 -0
  266. package/dist/tools/scheduling.js.map +1 -1
  267. package/dist/tools/shared-mailbox.d.ts +164 -0
  268. package/dist/tools/shared-mailbox.d.ts.map +1 -0
  269. package/dist/tools/shared-mailbox.js +318 -0
  270. package/dist/tools/shared-mailbox.js.map +1 -0
  271. package/dist/tools/sharepoint-lists.d.ts +131 -0
  272. package/dist/tools/sharepoint-lists.d.ts.map +1 -0
  273. package/dist/tools/sharepoint-lists.js +246 -0
  274. package/dist/tools/sharepoint-lists.js.map +1 -0
  275. package/dist/tools/sharepoint.d.ts +24 -14
  276. package/dist/tools/sharepoint.d.ts.map +1 -1
  277. package/dist/tools/sharepoint.js +85 -9
  278. package/dist/tools/sharepoint.js.map +1 -1
  279. package/dist/tools/task-attachments.d.ts +17 -7
  280. package/dist/tools/task-attachments.d.ts.map +1 -1
  281. package/dist/tools/task-attachments.js +60 -4
  282. package/dist/tools/task-attachments.js.map +1 -1
  283. package/dist/tools/task-lists.d.ts +56 -0
  284. package/dist/tools/task-lists.d.ts.map +1 -0
  285. package/dist/tools/task-lists.js +155 -0
  286. package/dist/tools/task-lists.js.map +1 -0
  287. package/dist/tools/tasks-graph.d.ts +49 -0
  288. package/dist/tools/tasks-graph.d.ts.map +1 -0
  289. package/dist/tools/tasks-graph.js +193 -0
  290. package/dist/tools/tasks-graph.js.map +1 -0
  291. package/dist/tools/tasks.d.ts +121 -29
  292. package/dist/tools/tasks.d.ts.map +1 -1
  293. package/dist/tools/tasks.js +136 -84
  294. package/dist/tools/tasks.js.map +1 -1
  295. package/dist/tools/teams.d.ts +57 -46
  296. package/dist/tools/teams.d.ts.map +1 -1
  297. package/dist/tools/teams.js +288 -26
  298. package/dist/tools/teams.js.map +1 -1
  299. package/dist/tools/what-changed.d.ts +48 -0
  300. package/dist/tools/what-changed.d.ts.map +1 -0
  301. package/dist/tools/what-changed.js +149 -0
  302. package/dist/tools/what-changed.js.map +1 -0
  303. package/dist/types/calendar.d.ts +1 -1
  304. package/dist/types/calendar.d.ts.map +1 -1
  305. package/dist/types/calendar.js.map +1 -1
  306. package/dist/types/contacts.d.ts +1 -1
  307. package/dist/types/contacts.d.ts.map +1 -1
  308. package/dist/types/contacts.js.map +1 -1
  309. package/dist/types/mail.d.ts +1 -1
  310. package/dist/types/mail.d.ts.map +1 -1
  311. package/dist/types/mail.js.map +1 -1
  312. package/dist/utils/errors.d.ts +110 -38
  313. package/dist/utils/errors.d.ts.map +1 -1
  314. package/dist/utils/errors.js +239 -56
  315. package/dist/utils/errors.js.map +1 -1
  316. package/dist/visualization/types.d.ts +4 -4
  317. package/package.json +2 -3
  318. package/dist/applescript/account-repository.d.ts +0 -30
  319. package/dist/applescript/account-repository.d.ts.map +0 -1
  320. package/dist/applescript/account-repository.js +0 -38
  321. package/dist/applescript/account-repository.js.map +0 -1
  322. package/dist/applescript/account-scripts.d.ts +0 -21
  323. package/dist/applescript/account-scripts.d.ts.map +0 -1
  324. package/dist/applescript/account-scripts.js +0 -180
  325. package/dist/applescript/account-scripts.js.map +0 -1
  326. package/dist/applescript/calendar-manager.d.ts +0 -44
  327. package/dist/applescript/calendar-manager.d.ts.map +0 -1
  328. package/dist/applescript/calendar-manager.js +0 -92
  329. package/dist/applescript/calendar-manager.js.map +0 -1
  330. package/dist/applescript/calendar-writer.d.ts +0 -36
  331. package/dist/applescript/calendar-writer.d.ts.map +0 -1
  332. package/dist/applescript/calendar-writer.js +0 -94
  333. package/dist/applescript/calendar-writer.js.map +0 -1
  334. package/dist/applescript/content-readers.d.ts +0 -114
  335. package/dist/applescript/content-readers.d.ts.map +0 -1
  336. package/dist/applescript/content-readers.js +0 -328
  337. package/dist/applescript/content-readers.js.map +0 -1
  338. package/dist/applescript/executor.d.ts +0 -60
  339. package/dist/applescript/executor.d.ts.map +0 -1
  340. package/dist/applescript/executor.js +0 -173
  341. package/dist/applescript/executor.js.map +0 -1
  342. package/dist/applescript/index.d.ts +0 -20
  343. package/dist/applescript/index.d.ts.map +0 -1
  344. package/dist/applescript/index.js +0 -29
  345. package/dist/applescript/index.js.map +0 -1
  346. package/dist/applescript/mail-sender.d.ts +0 -38
  347. package/dist/applescript/mail-sender.d.ts.map +0 -1
  348. package/dist/applescript/mail-sender.js +0 -67
  349. package/dist/applescript/mail-sender.js.map +0 -1
  350. package/dist/applescript/parser.d.ts +0 -235
  351. package/dist/applescript/parser.d.ts.map +0 -1
  352. package/dist/applescript/parser.js +0 -496
  353. package/dist/applescript/parser.js.map +0 -1
  354. package/dist/applescript/repository.d.ts +0 -64
  355. package/dist/applescript/repository.d.ts.map +0 -1
  356. package/dist/applescript/repository.js +0 -444
  357. package/dist/applescript/repository.js.map +0 -1
  358. package/dist/applescript/scripts.d.ts +0 -265
  359. package/dist/applescript/scripts.d.ts.map +0 -1
  360. package/dist/applescript/scripts.js +0 -1483
  361. package/dist/applescript/scripts.js.map +0 -1
  362. package/dist/parsers/olk15.d.ts +0 -87
  363. package/dist/parsers/olk15.d.ts.map +0 -1
  364. package/dist/parsers/olk15.js +0 -368
  365. package/dist/parsers/olk15.js.map +0 -1
  366. package/dist/tools/notes.d.ts +0 -74
  367. package/dist/tools/notes.d.ts.map +0 -1
  368. package/dist/tools/notes.js +0 -136
  369. package/dist/tools/notes.js.map +0 -1
@@ -0,0 +1,246 @@
1
+ /**
2
+ * Copyright (c) 2026 JBC Tech Solutions, LLC
3
+ * Licensed under the MIT License. See LICENSE file in the project root.
4
+ */
5
+ /**
6
+ * SharePoint Lists MCP tools (issue #38).
7
+ *
8
+ * Tools for browsing and editing SharePoint lists, their columns, and their
9
+ * items. Lists live under a site (durable sl_ token carries {siteId, listId});
10
+ * items live under a list (durable sn_ token carries {siteId, listId, itemId}).
11
+ * Item deletion uses the two-phase approval pattern.
12
+ */
13
+ import { z } from 'zod';
14
+ import { Id } from '../ids/schema.js';
15
+ import { nextActionFor } from '../ids/next-action.js';
16
+ import { defineTool } from '../registry/define-tool.js';
17
+ import { requireGraphToolset } from '../registry/context.js';
18
+ // =============================================================================
19
+ // Input Schemas
20
+ // =============================================================================
21
+ export const ListListsInput = z.strictObject({
22
+ site_id: Id.site,
23
+ });
24
+ export const GetListInput = z.strictObject({
25
+ list_id: Id.sharePointList,
26
+ });
27
+ export const CreateListInput = z.strictObject({
28
+ site_id: Id.site,
29
+ display_name: z.string().min(1).describe('Display name for the new list'),
30
+ description: z.string().optional().describe('Optional description for the list'),
31
+ });
32
+ export const ListListColumnsInput = z.strictObject({
33
+ list_id: Id.sharePointList,
34
+ });
35
+ export const ListListItemsInput = z.strictObject({
36
+ list_id: Id.sharePointList,
37
+ limit: z.number().int().min(1).max(200).default(50).describe('Maximum items to return (1-200)'),
38
+ });
39
+ export const GetListItemInput = z.strictObject({
40
+ item_id: Id.sharePointListItem,
41
+ });
42
+ export const CreateListItemInput = z.strictObject({
43
+ list_id: Id.sharePointList,
44
+ fields: z.record(z.string(), z.unknown()).describe('Column name → value map for the new item (e.g. { "Title": "New row", "Status": "Open" })'),
45
+ });
46
+ export const UpdateListItemInput = z.strictObject({
47
+ item_id: Id.sharePointListItem,
48
+ fields: z.record(z.string(), z.unknown()).describe('Column name → value map of fields to update'),
49
+ });
50
+ export const PrepareDeleteListItemInput = z.strictObject({
51
+ item_id: Id.sharePointListItem,
52
+ });
53
+ export const ConfirmDeleteListItemInput = z.strictObject({
54
+ token_id: z.string().uuid().describe('Approval token from prepare_delete_list_item'),
55
+ item_id: Id.sharePointListItem,
56
+ });
57
+ // =============================================================================
58
+ // SharePoint Lists Tools
59
+ // =============================================================================
60
+ function jsonResult(data) {
61
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
62
+ }
63
+ /**
64
+ * SharePoint list tools with two-phase approval for item deletion.
65
+ */
66
+ export class SharePointListsTools {
67
+ repository;
68
+ tokenManager;
69
+ constructor(repository, tokenManager) {
70
+ this.repository = repository;
71
+ this.tokenManager = tokenManager;
72
+ }
73
+ async listLists(params) {
74
+ const lists = await this.repository.listSharePointListsAsync(params.site_id);
75
+ return jsonResult({ lists, next: nextActionFor('sharePointList') ?? undefined });
76
+ }
77
+ async getList(params) {
78
+ const list = await this.repository.getSharePointListAsync(params.list_id);
79
+ return jsonResult({ list });
80
+ }
81
+ async createList(params) {
82
+ const listId = await this.repository.createSharePointListAsync(params.site_id, params.display_name, params.description);
83
+ return jsonResult({ id: listId, display_name: params.display_name, status: 'created', next: nextActionFor('sharePointList') ?? undefined });
84
+ }
85
+ async listListColumns(params) {
86
+ const columns = await this.repository.listSharePointListColumnsAsync(params.list_id);
87
+ return jsonResult({ columns });
88
+ }
89
+ async listListItems(params) {
90
+ const items = await this.repository.listSharePointListItemsAsync(params.list_id, params.limit);
91
+ return jsonResult({ items, next: nextActionFor('sharePointListItem') ?? undefined });
92
+ }
93
+ async getListItem(params) {
94
+ const item = await this.repository.getSharePointListItemAsync(params.item_id);
95
+ return jsonResult({ item });
96
+ }
97
+ async createListItem(params) {
98
+ const itemId = await this.repository.createSharePointListItemAsync(params.list_id, params.fields);
99
+ return jsonResult({ id: itemId, status: 'created', next: nextActionFor('sharePointListItem') ?? undefined });
100
+ }
101
+ async updateListItem(params) {
102
+ await this.repository.updateSharePointListItemAsync(params.item_id, params.fields);
103
+ return jsonResult({ id: params.item_id, status: 'updated' });
104
+ }
105
+ prepareDeleteListItem(params) {
106
+ const token = this.tokenManager.generateToken({
107
+ operation: 'delete_list_item',
108
+ targetType: 'list_item',
109
+ targetId: params.item_id,
110
+ targetHash: String(params.item_id),
111
+ });
112
+ return jsonResult({
113
+ token_id: token.tokenId,
114
+ expires_at: new Date(token.expiresAt).toISOString(),
115
+ item_id: params.item_id,
116
+ action: `To confirm deleting list item ${params.item_id}, call confirm_delete_list_item with the token_id and item_id.`,
117
+ });
118
+ }
119
+ async confirmDeleteListItem(params) {
120
+ const validation = this.tokenManager.consumeToken(params.token_id, 'delete_list_item', params.item_id);
121
+ if (!validation.valid) {
122
+ const errorMessages = {
123
+ NOT_FOUND: 'Token not found or already used',
124
+ EXPIRED: 'Token has expired. Please call prepare_delete_list_item again.',
125
+ OPERATION_MISMATCH: 'Token was not generated for delete_list_item',
126
+ TARGET_MISMATCH: 'Token was generated for a different list item',
127
+ ALREADY_CONSUMED: 'Token has already been used',
128
+ };
129
+ return jsonResult({ success: false, error: errorMessages[validation.error ?? ''] ?? 'Invalid token' });
130
+ }
131
+ await this.repository.deleteSharePointListItemAsync(params.item_id);
132
+ return jsonResult({ success: true, message: 'List item deleted' });
133
+ }
134
+ }
135
+ // =============================================================================
136
+ // Registry Definitions (v3 registry-driven architecture, U2)
137
+ // =============================================================================
138
+ /**
139
+ * Registry tool definitions for the sharepoint-lists domain.
140
+ */
141
+ export function sharePointListsToolDefinitions() {
142
+ const tools = (ctx) => requireGraphToolset(ctx, 'sharePointLists');
143
+ return [
144
+ defineTool({
145
+ name: 'list_lists',
146
+ description: 'List the SharePoint lists in a site (Graph API)',
147
+ input: ListListsInput,
148
+ annotations: { readOnlyHint: true, openWorldHint: true },
149
+ destructive: false,
150
+ presets: ['sharepoint'],
151
+ backends: ['graph'],
152
+ handler: (ctx, params) => tools(ctx).listLists(params),
153
+ }),
154
+ defineTool({
155
+ name: 'get_list',
156
+ description: 'Get details for a specific SharePoint list (Graph API)',
157
+ input: GetListInput,
158
+ annotations: { readOnlyHint: true, openWorldHint: true },
159
+ destructive: false,
160
+ presets: ['sharepoint'],
161
+ backends: ['graph'],
162
+ handler: (ctx, params) => tools(ctx).getList(params),
163
+ }),
164
+ defineTool({
165
+ name: 'create_list',
166
+ description: 'Create a new SharePoint list in a site (Graph API)',
167
+ input: CreateListInput,
168
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
169
+ destructive: false,
170
+ presets: ['sharepoint'],
171
+ backends: ['graph'],
172
+ handler: (ctx, params) => tools(ctx).createList(params),
173
+ }),
174
+ defineTool({
175
+ name: 'list_list_columns',
176
+ description: 'List the column definitions for a SharePoint list (Graph API)',
177
+ input: ListListColumnsInput,
178
+ annotations: { readOnlyHint: true, openWorldHint: true },
179
+ destructive: false,
180
+ presets: ['sharepoint'],
181
+ backends: ['graph'],
182
+ handler: (ctx, params) => tools(ctx).listListColumns(params),
183
+ }),
184
+ defineTool({
185
+ name: 'list_list_items',
186
+ description: 'List the items in a SharePoint list, with their field values (Graph API)',
187
+ input: ListListItemsInput,
188
+ annotations: { readOnlyHint: true, openWorldHint: true },
189
+ destructive: false,
190
+ presets: ['sharepoint'],
191
+ backends: ['graph'],
192
+ handler: (ctx, params) => tools(ctx).listListItems(params),
193
+ }),
194
+ defineTool({
195
+ name: 'get_list_item',
196
+ description: 'Get a specific SharePoint list item with its field values (Graph API)',
197
+ input: GetListItemInput,
198
+ annotations: { readOnlyHint: true, openWorldHint: true },
199
+ destructive: false,
200
+ presets: ['sharepoint'],
201
+ backends: ['graph'],
202
+ handler: (ctx, params) => tools(ctx).getListItem(params),
203
+ }),
204
+ defineTool({
205
+ name: 'create_list_item',
206
+ description: 'Create an item in a SharePoint list from a column name → value map (Graph API)',
207
+ input: CreateListItemInput,
208
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
209
+ destructive: false,
210
+ presets: ['sharepoint'],
211
+ backends: ['graph'],
212
+ handler: (ctx, params) => tools(ctx).createListItem(params),
213
+ }),
214
+ defineTool({
215
+ name: 'update_list_item',
216
+ description: 'Update the field values of a SharePoint list item (Graph API)',
217
+ input: UpdateListItemInput,
218
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
219
+ destructive: false,
220
+ presets: ['sharepoint'],
221
+ backends: ['graph'],
222
+ handler: (ctx, params) => tools(ctx).updateListItem(params),
223
+ }),
224
+ defineTool({
225
+ name: 'prepare_delete_list_item',
226
+ description: 'Prepare to delete a SharePoint list item. Returns an approval token. Call confirm_delete_list_item to execute. (Graph API)',
227
+ input: PrepareDeleteListItemInput,
228
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
229
+ destructive: true,
230
+ presets: ['sharepoint'],
231
+ backends: ['graph'],
232
+ handler: (ctx, params) => tools(ctx).prepareDeleteListItem(params),
233
+ }),
234
+ defineTool({
235
+ name: 'confirm_delete_list_item',
236
+ description: 'Confirm SharePoint list item deletion with an approval token (Graph API)',
237
+ input: ConfirmDeleteListItemInput,
238
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
239
+ destructive: true,
240
+ presets: ['sharepoint'],
241
+ backends: ['graph'],
242
+ handler: (ctx, params) => tools(ctx).confirmDeleteListItem(params),
243
+ }),
244
+ ];
245
+ }
246
+ //# sourceMappingURL=sharepoint-lists.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharepoint-lists.js","sourceRoot":"","sources":["../../src/tools/sharepoint-lists.ts"],"names":[],"mappings":"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"}
@@ -9,22 +9,28 @@
9
9
  * and downloading files from team document libraries.
10
10
  */
11
11
  import { z } from 'zod';
12
+ import type { ToolDefinition } from '../registry/types.js';
13
+ declare module '../registry/types.js' {
14
+ interface GraphToolsets {
15
+ sharePoint: SharePointTools;
16
+ }
17
+ }
12
18
  export declare const ListSitesInput: z.ZodObject<{}, z.core.$strict>;
13
19
  export declare const SearchSitesInput: z.ZodObject<{
14
20
  query: z.ZodString;
15
21
  }, z.core.$strict>;
16
22
  export declare const GetSiteInput: z.ZodObject<{
17
- site_id: z.ZodNumber;
23
+ site_id: z.ZodString;
18
24
  }, z.core.$strict>;
19
25
  export declare const ListDocumentLibrariesInput: z.ZodObject<{
20
- site_id: z.ZodNumber;
26
+ site_id: z.ZodString;
21
27
  }, z.core.$strict>;
22
28
  export declare const ListLibraryItemsInput: z.ZodObject<{
23
- library_id: z.ZodNumber;
24
- folder_id: z.ZodOptional<z.ZodNumber>;
29
+ library_id: z.ZodString;
30
+ folder_id: z.ZodOptional<z.ZodString>;
25
31
  }, z.core.$strict>;
26
32
  export declare const DownloadLibraryFileInput: z.ZodObject<{
27
- item_id: z.ZodNumber;
33
+ item_id: z.ZodString;
28
34
  output_path: z.ZodString;
29
35
  }, z.core.$strict>;
30
36
  export type ListSitesParams = z.infer<typeof ListSitesInput>;
@@ -35,39 +41,39 @@ export type ListLibraryItemsParams = z.infer<typeof ListLibraryItemsInput>;
35
41
  export type DownloadLibraryFileParams = z.infer<typeof DownloadLibraryFileInput>;
36
42
  export interface ISharePointRepository {
37
43
  listSitesAsync(): Promise<Array<{
38
- id: number;
44
+ id: string;
39
45
  name: string;
40
46
  webUrl: string;
41
47
  displayName: string;
42
48
  }>>;
43
49
  searchSitesAsync(query: string): Promise<Array<{
44
- id: number;
50
+ id: string;
45
51
  name: string;
46
52
  webUrl: string;
47
53
  displayName: string;
48
54
  }>>;
49
- getSiteAsync(siteId: number): Promise<{
50
- id: number;
55
+ getSiteAsync(siteId: string): Promise<{
56
+ id: string;
51
57
  name: string;
52
58
  webUrl: string;
53
59
  displayName: string;
54
60
  description: string;
55
61
  }>;
56
- listDocumentLibrariesAsync(siteId: number): Promise<Array<{
57
- id: number;
62
+ listDocumentLibrariesAsync(siteId: string): Promise<Array<{
63
+ id: string;
58
64
  name: string;
59
65
  webUrl: string;
60
66
  driveType: string;
61
67
  }>>;
62
- listLibraryItemsAsync(libraryId: number, folderId?: number): Promise<Array<{
63
- id: number;
68
+ listLibraryItemsAsync(libraryId: string, folderId?: string): Promise<Array<{
69
+ id: string;
64
70
  name: string;
65
71
  size: number;
66
72
  webUrl: string;
67
73
  lastModifiedDateTime: string;
68
74
  isFolder: boolean;
69
75
  }>>;
70
- downloadLibraryFileAsync(itemId: number, outputPath: string): Promise<string>;
76
+ downloadLibraryFileAsync(itemId: string, outputPath: string): Promise<string>;
71
77
  }
72
78
  /**
73
79
  * SharePoint document library tools for browsing sites, libraries, and files.
@@ -112,4 +118,8 @@ export declare class SharePointTools {
112
118
  }>;
113
119
  }>;
114
120
  }
121
+ /**
122
+ * Registry tool definitions for the sharepoint domain.
123
+ */
124
+ export declare function sharePointToolDefinitions(): ToolDefinition[];
115
125
  //# sourceMappingURL=sharepoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sharepoint.d.ts","sourceRoot":"","sources":["../../src/tools/sharepoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sharepoint.d.ts","sourceRoot":"","sources":["../../src/tools/sharepoint.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,10 @@
9
9
  * and downloading files from team document libraries.
10
10
  */
11
11
  import { z } from 'zod';
12
+ import { Id } from '../ids/schema.js';
13
+ import { nextActionFor } from '../ids/next-action.js';
14
+ import { defineTool } from '../registry/define-tool.js';
15
+ import { requireGraphToolset } from '../registry/context.js';
12
16
  // =============================================================================
13
17
  // Input Schemas
14
18
  // =============================================================================
@@ -17,17 +21,17 @@ export const SearchSitesInput = z.strictObject({
17
21
  query: z.string().min(1).describe('Search keyword for SharePoint sites'),
18
22
  });
19
23
  export const GetSiteInput = z.strictObject({
20
- site_id: z.number().int().positive().describe('Site ID from list_sites or search_sites'),
24
+ site_id: Id.site,
21
25
  });
22
26
  export const ListDocumentLibrariesInput = z.strictObject({
23
- site_id: z.number().int().positive().describe('Site ID from list_sites or search_sites'),
27
+ site_id: Id.site,
24
28
  });
25
29
  export const ListLibraryItemsInput = z.strictObject({
26
- library_id: z.number().int().positive().describe('Library ID from list_document_libraries'),
27
- folder_id: z.number().int().positive().optional().describe('Folder ID to browse into (from a previous list_library_items call)'),
30
+ library_id: Id.documentLibrary,
31
+ folder_id: Id.libraryDriveItem.optional().describe('Folder ID to browse into — a li_ token from a previous list_library_items call.'),
28
32
  });
29
33
  export const DownloadLibraryFileInput = z.strictObject({
30
- item_id: z.number().int().positive().describe('Item ID from list_library_items'),
34
+ item_id: Id.libraryDriveItem,
31
35
  output_path: z.string().min(1).describe('Local file path to save the downloaded file'),
32
36
  });
33
37
  // =============================================================================
@@ -46,7 +50,7 @@ export class SharePointTools {
46
50
  return {
47
51
  content: [{
48
52
  type: 'text',
49
- text: JSON.stringify({ sites }, null, 2),
53
+ text: JSON.stringify({ sites, next: nextActionFor('site') ?? undefined }, null, 2),
50
54
  }],
51
55
  };
52
56
  }
@@ -55,7 +59,7 @@ export class SharePointTools {
55
59
  return {
56
60
  content: [{
57
61
  type: 'text',
58
- text: JSON.stringify({ sites }, null, 2),
62
+ text: JSON.stringify({ sites, next: nextActionFor('site') ?? undefined }, null, 2),
59
63
  }],
60
64
  };
61
65
  }
@@ -73,7 +77,7 @@ export class SharePointTools {
73
77
  return {
74
78
  content: [{
75
79
  type: 'text',
76
- text: JSON.stringify({ libraries }, null, 2),
80
+ text: JSON.stringify({ libraries, next: nextActionFor('documentLibrary') ?? undefined }, null, 2),
77
81
  }],
78
82
  };
79
83
  }
@@ -82,7 +86,7 @@ export class SharePointTools {
82
86
  return {
83
87
  content: [{
84
88
  type: 'text',
85
- text: JSON.stringify({ items }, null, 2),
89
+ text: JSON.stringify({ items, next: nextActionFor('libraryDriveItem') ?? undefined }, null, 2),
86
90
  }],
87
91
  };
88
92
  }
@@ -96,4 +100,76 @@ export class SharePointTools {
96
100
  };
97
101
  }
98
102
  }
103
+ // =============================================================================
104
+ // Registry Definitions (v3 registry-driven architecture, U2)
105
+ // =============================================================================
106
+ /**
107
+ * Registry tool definitions for the sharepoint domain.
108
+ */
109
+ export function sharePointToolDefinitions() {
110
+ const tools = (ctx) => requireGraphToolset(ctx, 'sharePoint');
111
+ return [
112
+ defineTool({
113
+ name: 'list_sites',
114
+ description: 'List SharePoint sites the user follows (Graph API)',
115
+ input: ListSitesInput,
116
+ annotations: { readOnlyHint: true, openWorldHint: true },
117
+ destructive: false,
118
+ presets: ['sharepoint'],
119
+ backends: ['graph'],
120
+ handler: (ctx) => tools(ctx).listSites(),
121
+ }),
122
+ defineTool({
123
+ name: 'search_sites',
124
+ description: 'Search for SharePoint sites by keyword (Graph API)',
125
+ input: SearchSitesInput,
126
+ annotations: { readOnlyHint: true, openWorldHint: true },
127
+ destructive: false,
128
+ presets: ['sharepoint'],
129
+ backends: ['graph'],
130
+ handler: (ctx, params) => tools(ctx).searchSites(params),
131
+ }),
132
+ defineTool({
133
+ name: 'get_site',
134
+ description: 'Get details for a specific SharePoint site (Graph API)',
135
+ input: GetSiteInput,
136
+ annotations: { readOnlyHint: true, openWorldHint: true },
137
+ destructive: false,
138
+ presets: ['sharepoint'],
139
+ backends: ['graph'],
140
+ handler: (ctx, params) => tools(ctx).getSite(params),
141
+ }),
142
+ defineTool({
143
+ name: 'list_document_libraries',
144
+ description: 'List document libraries (drives) for a SharePoint site (Graph API)',
145
+ input: ListDocumentLibrariesInput,
146
+ annotations: { readOnlyHint: true, openWorldHint: true },
147
+ destructive: false,
148
+ presets: ['sharepoint'],
149
+ backends: ['graph'],
150
+ handler: (ctx, params) => tools(ctx).listDocumentLibraries(params),
151
+ }),
152
+ defineTool({
153
+ name: 'list_library_items',
154
+ description: 'List files and folders in a document library or subfolder (Graph API)',
155
+ input: ListLibraryItemsInput,
156
+ annotations: { readOnlyHint: true, openWorldHint: true },
157
+ destructive: false,
158
+ presets: ['sharepoint'],
159
+ backends: ['graph'],
160
+ handler: (ctx, params) => tools(ctx).listLibraryItems(params),
161
+ }),
162
+ defineTool({
163
+ name: 'download_library_file',
164
+ description: 'Download a file from a SharePoint document library to a local path (Graph API)',
165
+ input: DownloadLibraryFileInput,
166
+ // Writes the file to output_path on local disk — not read-only.
167
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
168
+ destructive: false,
169
+ presets: ['sharepoint'],
170
+ backends: ['graph'],
171
+ handler: (ctx, params) => tools(ctx).downloadLibraryFile(params),
172
+ }),
173
+ ];
174
+ }
99
175
  //# sourceMappingURL=sharepoint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sharepoint.js","sourceRoot":"","sources":["../../src/tools/sharepoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sharepoint.js","sourceRoot":"","sources":["../../src/tools/sharepoint.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAS7D,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEjD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CACzE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;IACzC,OAAO,EAAE,EAAE,CAAC,IAAI;CACjB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACvD,OAAO,EAAE,EAAE,CAAC,IAAI;CACjB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC;IAClD,UAAU,EAAE,EAAE,CAAC,eAAe;IAC9B,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;CACtI,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,YAAY,CAAC;IACrD,OAAO,EAAE,EAAE,CAAC,gBAAgB;IAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;CACvF,CAAC,CAAC;AA6BH,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,eAAe;IAEP;IADnB,YACmB,IAA2B;QAA3B,SAAI,GAAJ,IAAI,CAAuB;IAC3C,CAAC;IAEJ,KAAK,CAAC,SAAS;QAGb,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC/C,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACnF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAyB;QAGzC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACnF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAqB;QAGjC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACxC,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAmC;QAG7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,CAAC,iBAAiB,CAAC,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBAClG,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAA8B;QAGnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzF,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC/F,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAiC;QAGzD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/F,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC9F,CAAC;SACH,CAAC;IACJ,CAAC;CACF;AAED,gFAAgF;AAChF,6DAA6D;AAC7D,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,MAAM,KAAK,GAAG,CAAC,GAAgB,EAAmB,EAAE,CAAC,mBAAmB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAE5F,OAAO;QACL,UAAU,CAAC;YACT,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACxD,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE;SACzC,CAAC;QACF,UAAU,CAAC;YACT,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACxD,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;SACzD,CAAC;QACF,UAAU,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,wDAAwD;YACrE,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACxD,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;SACrD,CAAC;QACF,UAAU,CAAC;YACT,IAAI,EAAE,yBAAyB;YAC/B,WAAW,EAAE,oEAAoE;YACjF,KAAK,EAAE,0BAA0B;YACjC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACxD,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC;SACnE,CAAC;QACF,UAAU,CAAC;YACT,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,uEAAuE;YACpF,KAAK,EAAE,qBAAqB;YAC5B,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACxD,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC;SAC9D,CAAC;QACF,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB;YAC7B,WAAW,EAAE,gFAAgF;YAC7F,KAAK,EAAE,wBAAwB;YAC/B,gEAAgE;YAChE,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE;YACjF,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC;SACjE,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -10,17 +10,23 @@
10
10
  */
11
11
  import { z } from 'zod';
12
12
  import type { ApprovalTokenManager } from '../approval/index.js';
13
+ import type { ToolDefinition } from '../registry/types.js';
14
+ declare module '../registry/types.js' {
15
+ interface GraphToolsets {
16
+ taskAttachments: TaskAttachmentsTools;
17
+ }
18
+ }
13
19
  export declare const ListTaskAttachmentsInput: z.ZodObject<{
14
- task_id: z.ZodNumber;
20
+ task_id: z.ZodString;
15
21
  }, z.core.$strict>;
16
22
  export declare const CreateTaskAttachmentInput: z.ZodObject<{
17
- task_id: z.ZodNumber;
23
+ task_id: z.ZodString;
18
24
  name: z.ZodString;
19
25
  content_bytes: z.ZodString;
20
26
  content_type: z.ZodOptional<z.ZodString>;
21
27
  }, z.core.$strict>;
22
28
  export declare const PrepareDeleteTaskAttachmentInput: z.ZodObject<{
23
- task_attachment_id: z.ZodNumber;
29
+ task_attachment_id: z.ZodString;
24
30
  }, z.core.$strict>;
25
31
  export declare const ConfirmDeleteTaskAttachmentInput: z.ZodObject<{
26
32
  approval_token: z.ZodString;
@@ -30,14 +36,14 @@ export type CreateTaskAttachmentParams = z.infer<typeof CreateTaskAttachmentInpu
30
36
  export type PrepareDeleteTaskAttachmentParams = z.infer<typeof PrepareDeleteTaskAttachmentInput>;
31
37
  export type ConfirmDeleteTaskAttachmentParams = z.infer<typeof ConfirmDeleteTaskAttachmentInput>;
32
38
  export interface ITaskAttachmentsRepository {
33
- listTaskAttachmentsAsync(taskId: number): Promise<Array<{
34
- id: number;
39
+ listTaskAttachmentsAsync(taskId: string): Promise<Array<{
40
+ id: string;
35
41
  name: string;
36
42
  size: number;
37
43
  contentType: string;
38
44
  }>>;
39
- createTaskAttachmentAsync(taskId: number, name: string, contentBytes: string, contentType?: string): Promise<number>;
40
- deleteTaskAttachmentAsync(taskAttachmentId: number): Promise<void>;
45
+ createTaskAttachmentAsync(taskId: string, name: string, contentBytes: string, contentType?: string): Promise<string>;
46
+ deleteTaskAttachmentAsync(taskAttachmentId: string): Promise<void>;
41
47
  }
42
48
  /**
43
49
  * Task attachment tools with two-phase approval for delete operations.
@@ -71,4 +77,8 @@ export declare class TaskAttachmentsTools {
71
77
  }>;
72
78
  }>;
73
79
  }
80
+ /**
81
+ * Registry tool definitions for the task-attachments domain.
82
+ */
83
+ export declare function taskAttachmentsToolDefinitions(): ToolDefinition[];
74
84
  //# sourceMappingURL=task-attachments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-attachments.d.ts","sourceRoot":"","sources":["../../src/tools/task-attachments.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAMjE,eAAO,MAAM,wBAAwB;;kBAEnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;kBAKpC,CAAC;AAEH,eAAO,MAAM,gCAAgC;;kBAE3C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;kBAE3C,CAAC;AAMH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACjF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AACjG,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAMjG,MAAM,WAAW,0BAA0B;IACzC,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC1H,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrH,yBAAyB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AAMD;;GAEG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,IAAI,EAAE,0BAA0B,EAChC,YAAY,EAAE,oBAAoB;IAG/C,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC;QACpE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;IAUI,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC;QACtE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;IAUF,2BAA2B,CAAC,MAAM,EAAE,iCAAiC,GAAG;QACtE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD;IAqBK,2BAA2B,CAAC,MAAM,EAAE,iCAAiC,GAAG,OAAO,CAAC;QACpF,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;CA2CH"}
1
+ {"version":3,"file":"task-attachments.d.ts","sourceRoot":"","sources":["../../src/tools/task-attachments.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAIjE,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,aAAa;QACrB,eAAe,EAAE,oBAAoB,CAAC;KACvC;CACF;AAMD,eAAO,MAAM,wBAAwB;;kBAEnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;kBAKpC,CAAC;AAEH,eAAO,MAAM,gCAAgC;;kBAE3C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;kBAE3C,CAAC;AAMH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACjF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AACjG,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAMjG,MAAM,WAAW,0BAA0B;IACzC,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC1H,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrH,yBAAyB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AAMD;;GAEG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,IAAI,EAAE,0BAA0B,EAChC,YAAY,EAAE,oBAAoB;IAG/C,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC;QACpE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;IAUI,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC;QACtE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;IAUF,2BAA2B,CAAC,MAAM,EAAE,iCAAiC,GAAG;QACtE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD;IAqBK,2BAA2B,CAAC,MAAM,EAAE,iCAAiC,GAAG,OAAO,CAAC;QACpF,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;CA2CH;AAMD;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,cAAc,EAAE,CA8CjE"}