@payloadcms/plugin-mcp 3.91.0-internal.c1569dc → 4.0.0-beta.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 (423) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +2 -2
  3. package/bin.js +39 -0
  4. package/dist/defaultAccess.d.ts +3 -0
  5. package/dist/defaultAccess.d.ts.map +1 -0
  6. package/dist/defaultAccess.js +3 -0
  7. package/dist/defaultAccess.js.map +1 -0
  8. package/dist/defineTool.d.ts +26 -0
  9. package/dist/defineTool.d.ts.map +1 -0
  10. package/dist/defineTool.js +37 -0
  11. package/dist/defineTool.js.map +1 -0
  12. package/dist/endpoint/access.d.ts +17 -0
  13. package/dist/endpoint/access.d.ts.map +1 -0
  14. package/dist/endpoint/access.js +93 -0
  15. package/dist/endpoint/access.js.map +1 -0
  16. package/dist/endpoint/index.d.ts +3 -0
  17. package/dist/endpoint/index.d.ts.map +1 -0
  18. package/dist/endpoint/index.js +116 -0
  19. package/dist/endpoint/index.js.map +1 -0
  20. package/dist/exports/client.d.ts +2 -0
  21. package/dist/exports/client.d.ts.map +1 -0
  22. package/dist/exports/client.js +4 -0
  23. package/dist/exports/client.js.map +1 -0
  24. package/dist/exports/internal.d.ts +2 -0
  25. package/dist/exports/internal.d.ts.map +1 -0
  26. package/dist/exports/internal.js +3 -0
  27. package/dist/exports/internal.js.map +1 -0
  28. package/dist/index.d.ts +6 -9
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +39 -67
  31. package/dist/index.js.map +1 -1
  32. package/dist/mcp/buildMcpServer.d.ts +19 -0
  33. package/dist/mcp/buildMcpServer.d.ts.map +1 -0
  34. package/dist/mcp/buildMcpServer.js +235 -0
  35. package/dist/mcp/buildMcpServer.js.map +1 -0
  36. package/dist/mcp/builtin/collections/authTools.d.ts +7 -0
  37. package/dist/mcp/builtin/collections/authTools.d.ts.map +1 -0
  38. package/dist/mcp/builtin/collections/authTools.js +312 -0
  39. package/dist/mcp/builtin/collections/authTools.js.map +1 -0
  40. package/dist/mcp/builtin/collections/countTool.d.ts +2 -0
  41. package/dist/mcp/builtin/collections/countTool.d.ts.map +1 -0
  42. package/dist/mcp/builtin/collections/countTool.js +63 -0
  43. package/dist/mcp/builtin/collections/countTool.js.map +1 -0
  44. package/dist/mcp/builtin/collections/countVersionsTool.d.ts +2 -0
  45. package/dist/mcp/builtin/collections/countVersionsTool.d.ts.map +1 -0
  46. package/dist/mcp/builtin/collections/countVersionsTool.js +60 -0
  47. package/dist/mcp/builtin/collections/countVersionsTool.js.map +1 -0
  48. package/dist/mcp/builtin/collections/createTool.d.ts +2 -0
  49. package/dist/mcp/builtin/collections/createTool.d.ts.map +1 -0
  50. package/dist/mcp/builtin/collections/createTool.js +137 -0
  51. package/dist/mcp/builtin/collections/createTool.js.map +1 -0
  52. package/dist/mcp/builtin/collections/deleteTool.d.ts +2 -0
  53. package/dist/mcp/builtin/collections/deleteTool.d.ts.map +1 -0
  54. package/dist/mcp/builtin/collections/deleteTool.js +111 -0
  55. package/dist/mcp/builtin/collections/deleteTool.js.map +1 -0
  56. package/dist/mcp/builtin/collections/duplicateTool.d.ts +2 -0
  57. package/dist/mcp/builtin/collections/duplicateTool.d.ts.map +1 -0
  58. package/dist/mcp/builtin/collections/duplicateTool.js +90 -0
  59. package/dist/mcp/builtin/collections/duplicateTool.js.map +1 -0
  60. package/dist/mcp/builtin/collections/fileInput.d.ts +28 -0
  61. package/dist/mcp/builtin/collections/fileInput.d.ts.map +1 -0
  62. package/dist/mcp/builtin/collections/fileInput.js +88 -0
  63. package/dist/mcp/builtin/collections/fileInput.js.map +1 -0
  64. package/dist/mcp/builtin/collections/findDistinctTool.d.ts +2 -0
  65. package/dist/mcp/builtin/collections/findDistinctTool.d.ts.map +1 -0
  66. package/dist/mcp/builtin/collections/findDistinctTool.js +77 -0
  67. package/dist/mcp/builtin/collections/findDistinctTool.js.map +1 -0
  68. package/dist/mcp/builtin/collections/findTool.d.ts +2 -0
  69. package/dist/mcp/builtin/collections/findTool.d.ts.map +1 -0
  70. package/dist/mcp/builtin/collections/findTool.js +146 -0
  71. package/dist/mcp/builtin/collections/findTool.js.map +1 -0
  72. package/dist/mcp/builtin/collections/findVersionByIDTool.d.ts +2 -0
  73. package/dist/mcp/builtin/collections/findVersionByIDTool.d.ts.map +1 -0
  74. package/dist/mcp/builtin/collections/findVersionByIDTool.js +74 -0
  75. package/dist/mcp/builtin/collections/findVersionByIDTool.js.map +1 -0
  76. package/dist/mcp/builtin/collections/findVersionsTool.d.ts +2 -0
  77. package/dist/mcp/builtin/collections/findVersionsTool.d.ts.map +1 -0
  78. package/dist/mcp/builtin/collections/findVersionsTool.js +84 -0
  79. package/dist/mcp/builtin/collections/findVersionsTool.js.map +1 -0
  80. package/dist/mcp/builtin/collections/getCollectionSchemaTool.d.ts +2 -0
  81. package/dist/mcp/builtin/collections/getCollectionSchemaTool.d.ts.map +1 -0
  82. package/dist/mcp/builtin/collections/getCollectionSchemaTool.js +103 -0
  83. package/dist/mcp/builtin/collections/getCollectionSchemaTool.js.map +1 -0
  84. package/dist/mcp/builtin/collections/restoreVersionTool.d.ts +2 -0
  85. package/dist/mcp/builtin/collections/restoreVersionTool.d.ts.map +1 -0
  86. package/dist/mcp/builtin/collections/restoreVersionTool.js +69 -0
  87. package/dist/mcp/builtin/collections/restoreVersionTool.js.map +1 -0
  88. package/dist/mcp/builtin/collections/updateTool.d.ts +2 -0
  89. package/dist/mcp/builtin/collections/updateTool.d.ts.map +1 -0
  90. package/dist/mcp/builtin/collections/updateTool.js +172 -0
  91. package/dist/mcp/builtin/collections/updateTool.js.map +1 -0
  92. package/dist/mcp/builtin/collections/uploadInstructionsTool.d.ts +2 -0
  93. package/dist/mcp/builtin/collections/uploadInstructionsTool.d.ts.map +1 -0
  94. package/dist/mcp/builtin/collections/uploadInstructionsTool.js +55 -0
  95. package/dist/mcp/builtin/collections/uploadInstructionsTool.js.map +1 -0
  96. package/dist/mcp/builtin/formatEntityError.d.ts +16 -0
  97. package/dist/mcp/builtin/formatEntityError.d.ts.map +1 -0
  98. package/dist/mcp/builtin/formatEntityError.js +55 -0
  99. package/dist/mcp/builtin/formatEntityError.js.map +1 -0
  100. package/dist/mcp/builtin/getConfigInfoTool.d.ts +2 -0
  101. package/dist/mcp/builtin/getConfigInfoTool.d.ts.map +1 -0
  102. package/dist/mcp/builtin/getConfigInfoTool.js +69 -0
  103. package/dist/mcp/builtin/getConfigInfoTool.js.map +1 -0
  104. package/dist/mcp/builtin/globals/countVersionsTool.d.ts +2 -0
  105. package/dist/mcp/builtin/globals/countVersionsTool.d.ts.map +1 -0
  106. package/dist/mcp/builtin/globals/countVersionsTool.js +60 -0
  107. package/dist/mcp/builtin/globals/countVersionsTool.js.map +1 -0
  108. package/dist/mcp/builtin/globals/findTool.d.ts +2 -0
  109. package/dist/mcp/builtin/globals/findTool.d.ts.map +1 -0
  110. package/dist/mcp/builtin/globals/findTool.js +67 -0
  111. package/dist/mcp/builtin/globals/findTool.js.map +1 -0
  112. package/dist/mcp/builtin/globals/findVersionByIDTool.d.ts +2 -0
  113. package/dist/mcp/builtin/globals/findVersionByIDTool.d.ts.map +1 -0
  114. package/dist/mcp/builtin/globals/findVersionByIDTool.js +68 -0
  115. package/dist/mcp/builtin/globals/findVersionByIDTool.js.map +1 -0
  116. package/dist/mcp/builtin/globals/findVersionsTool.d.ts +2 -0
  117. package/dist/mcp/builtin/globals/findVersionsTool.d.ts.map +1 -0
  118. package/dist/mcp/builtin/globals/findVersionsTool.js +78 -0
  119. package/dist/mcp/builtin/globals/findVersionsTool.js.map +1 -0
  120. package/dist/mcp/builtin/globals/getGlobalSchemaTool.d.ts +2 -0
  121. package/dist/mcp/builtin/globals/getGlobalSchemaTool.d.ts.map +1 -0
  122. package/dist/mcp/builtin/globals/getGlobalSchemaTool.js +81 -0
  123. package/dist/mcp/builtin/globals/getGlobalSchemaTool.js.map +1 -0
  124. package/dist/mcp/builtin/globals/restoreVersionTool.d.ts +2 -0
  125. package/dist/mcp/builtin/globals/restoreVersionTool.d.ts.map +1 -0
  126. package/dist/mcp/builtin/globals/restoreVersionTool.js +70 -0
  127. package/dist/mcp/builtin/globals/restoreVersionTool.js.map +1 -0
  128. package/dist/mcp/builtin/globals/updateTool.d.ts +2 -0
  129. package/dist/mcp/builtin/globals/updateTool.d.ts.map +1 -0
  130. package/dist/mcp/builtin/globals/updateTool.js +78 -0
  131. package/dist/mcp/builtin/globals/updateTool.js.map +1 -0
  132. package/dist/mcp/builtinTools.d.ts +168 -0
  133. package/dist/mcp/builtinTools.d.ts.map +1 -0
  134. package/dist/mcp/builtinTools.js +169 -0
  135. package/dist/mcp/builtinTools.js.map +1 -0
  136. package/dist/mcp/sanitizeMCPConfig.d.ts +16 -0
  137. package/dist/mcp/sanitizeMCPConfig.d.ts.map +1 -0
  138. package/dist/mcp/sanitizeMCPConfig.js +233 -0
  139. package/dist/mcp/sanitizeMCPConfig.js.map +1 -0
  140. package/dist/stdio.d.ts +8 -0
  141. package/dist/stdio.d.ts.map +1 -0
  142. package/dist/stdio.js +128 -0
  143. package/dist/stdio.js.map +1 -0
  144. package/dist/types.d.ts +263 -447
  145. package/dist/types.d.ts.map +1 -1
  146. package/dist/types.js +4 -1
  147. package/dist/types.js.map +1 -1
  148. package/dist/utils/getLogger.d.ts +10 -0
  149. package/dist/utils/getLogger.d.ts.map +1 -0
  150. package/dist/utils/getLogger.js +22 -0
  151. package/dist/utils/getLogger.js.map +1 -0
  152. package/dist/utils/getPluginConfig.d.ts +12 -0
  153. package/dist/utils/getPluginConfig.d.ts.map +1 -0
  154. package/dist/utils/getPluginConfig.js +15 -0
  155. package/dist/utils/getPluginConfig.js.map +1 -0
  156. package/dist/utils/resolveProjectRoot.d.ts +7 -0
  157. package/dist/utils/resolveProjectRoot.d.ts.map +1 -0
  158. package/dist/utils/resolveProjectRoot.js +15 -0
  159. package/dist/utils/resolveProjectRoot.js.map +1 -0
  160. package/dist/utils/toStandardSchema.d.ts +5 -0
  161. package/dist/utils/toStandardSchema.d.ts.map +1 -0
  162. package/dist/utils/toStandardSchema.js +4 -0
  163. package/dist/utils/toStandardSchema.js.map +1 -0
  164. package/package.json +29 -11
  165. package/src/defaultAccess.ts +3 -0
  166. package/src/defineTool.ts +44 -0
  167. package/src/endpoint/access.ts +111 -0
  168. package/src/endpoint/index.ts +107 -0
  169. package/src/exports/client.ts +3 -0
  170. package/src/exports/internal.ts +1 -0
  171. package/src/index.ts +31 -89
  172. package/src/mcp/buildMcpServer.ts +294 -0
  173. package/src/mcp/builtin/collections/authTools.ts +280 -0
  174. package/src/mcp/builtin/collections/countTool.ts +61 -0
  175. package/src/mcp/builtin/collections/countVersionsTool.ts +60 -0
  176. package/src/mcp/builtin/collections/createTool.ts +145 -0
  177. package/src/mcp/builtin/collections/deleteTool.ts +97 -0
  178. package/src/mcp/builtin/collections/duplicateTool.ts +84 -0
  179. package/src/mcp/builtin/collections/fileInput.spec.ts +93 -0
  180. package/src/mcp/builtin/collections/fileInput.ts +127 -0
  181. package/src/mcp/builtin/collections/findDistinctTool.ts +67 -0
  182. package/src/mcp/builtin/collections/findTool.ts +134 -0
  183. package/src/mcp/builtin/collections/findVersionByIDTool.ts +66 -0
  184. package/src/mcp/builtin/collections/findVersionsTool.ts +83 -0
  185. package/src/mcp/builtin/collections/getCollectionSchemaTool.ts +91 -0
  186. package/src/mcp/builtin/collections/restoreVersionTool.ts +65 -0
  187. package/src/mcp/builtin/collections/updateTool.ts +173 -0
  188. package/src/mcp/builtin/collections/uploadInstructionsTool.ts +64 -0
  189. package/src/mcp/builtin/formatEntityError.ts +77 -0
  190. package/src/mcp/builtin/getConfigInfoTool.ts +68 -0
  191. package/src/mcp/builtin/globals/countVersionsTool.ts +60 -0
  192. package/src/mcp/builtin/globals/findTool.ts +66 -0
  193. package/src/mcp/builtin/globals/findVersionByIDTool.ts +64 -0
  194. package/src/mcp/builtin/globals/findVersionsTool.ts +69 -0
  195. package/src/mcp/builtin/globals/getGlobalSchemaTool.ts +73 -0
  196. package/src/mcp/builtin/globals/restoreVersionTool.ts +68 -0
  197. package/src/mcp/builtin/globals/updateTool.ts +92 -0
  198. package/src/mcp/builtinTools.ts +161 -0
  199. package/src/mcp/sanitizeMCPConfig.ts +281 -0
  200. package/src/stdio.ts +131 -0
  201. package/src/types.ts +312 -486
  202. package/src/utils/getLogger.ts +22 -0
  203. package/src/utils/getPluginConfig.ts +24 -0
  204. package/src/utils/resolveProjectRoot.ts +17 -0
  205. package/src/utils/toStandardSchema.ts +9 -0
  206. package/dist/collections/createApiKeysCollection.d.ts +0 -7
  207. package/dist/collections/createApiKeysCollection.d.ts.map +0 -1
  208. package/dist/collections/createApiKeysCollection.js +0 -342
  209. package/dist/collections/createApiKeysCollection.js.map +0 -1
  210. package/dist/defaults.d.ts +0 -4
  211. package/dist/defaults.d.ts.map +0 -1
  212. package/dist/defaults.js +0 -5
  213. package/dist/defaults.js.map +0 -1
  214. package/dist/endpoints/mcp.d.ts +0 -4
  215. package/dist/endpoints/mcp.d.ts.map +0 -1
  216. package/dist/endpoints/mcp.js +0 -24
  217. package/dist/endpoints/mcp.js.map +0 -1
  218. package/dist/endpoints/resolveAccessSettings.d.ts +0 -10
  219. package/dist/endpoints/resolveAccessSettings.d.ts.map +0 -1
  220. package/dist/endpoints/resolveAccessSettings.js +0 -44
  221. package/dist/endpoints/resolveAccessSettings.js.map +0 -1
  222. package/dist/endpoints/withRestoredWebGlobals.d.ts +0 -5
  223. package/dist/endpoints/withRestoredWebGlobals.d.ts.map +0 -1
  224. package/dist/endpoints/withRestoredWebGlobals.js +0 -23
  225. package/dist/endpoints/withRestoredWebGlobals.js.map +0 -1
  226. package/dist/mcp/createRequest.d.ts +0 -3
  227. package/dist/mcp/createRequest.d.ts.map +0 -1
  228. package/dist/mcp/createRequest.js +0 -14
  229. package/dist/mcp/createRequest.js.map +0 -1
  230. package/dist/mcp/getMcpHandler.d.ts +0 -4
  231. package/dist/mcp/getMcpHandler.d.ts.map +0 -1
  232. package/dist/mcp/getMcpHandler.js +0 -231
  233. package/dist/mcp/getMcpHandler.js.map +0 -1
  234. package/dist/mcp/helpers/config.d.ts +0 -22
  235. package/dist/mcp/helpers/config.d.ts.map +0 -1
  236. package/dist/mcp/helpers/config.js +0 -153
  237. package/dist/mcp/helpers/config.js.map +0 -1
  238. package/dist/mcp/helpers/fields.d.ts +0 -19
  239. package/dist/mcp/helpers/fields.d.ts.map +0 -1
  240. package/dist/mcp/helpers/fields.js +0 -102
  241. package/dist/mcp/helpers/fields.js.map +0 -1
  242. package/dist/mcp/helpers/fileValidation.d.ts +0 -67
  243. package/dist/mcp/helpers/fileValidation.d.ts.map +0 -1
  244. package/dist/mcp/helpers/fileValidation.js +0 -267
  245. package/dist/mcp/helpers/fileValidation.js.map +0 -1
  246. package/dist/mcp/registerTool.d.ts +0 -6
  247. package/dist/mcp/registerTool.d.ts.map +0 -1
  248. package/dist/mcp/registerTool.js +0 -18
  249. package/dist/mcp/registerTool.js.map +0 -1
  250. package/dist/mcp/tools/auth/auth.d.ts +0 -4
  251. package/dist/mcp/tools/auth/auth.d.ts.map +0 -1
  252. package/dist/mcp/tools/auth/auth.js +0 -79
  253. package/dist/mcp/tools/auth/auth.js.map +0 -1
  254. package/dist/mcp/tools/auth/auth.spec.js +0 -83
  255. package/dist/mcp/tools/auth/auth.spec.js.map +0 -1
  256. package/dist/mcp/tools/auth/forgotPassword.d.ts +0 -4
  257. package/dist/mcp/tools/auth/forgotPassword.d.ts.map +0 -1
  258. package/dist/mcp/tools/auth/forgotPassword.js +0 -50
  259. package/dist/mcp/tools/auth/forgotPassword.js.map +0 -1
  260. package/dist/mcp/tools/auth/login.d.ts +0 -4
  261. package/dist/mcp/tools/auth/login.d.ts.map +0 -1
  262. package/dist/mcp/tools/auth/login.js +0 -50
  263. package/dist/mcp/tools/auth/login.js.map +0 -1
  264. package/dist/mcp/tools/auth/resetPassword.d.ts +0 -4
  265. package/dist/mcp/tools/auth/resetPassword.d.ts.map +0 -1
  266. package/dist/mcp/tools/auth/resetPassword.js +0 -49
  267. package/dist/mcp/tools/auth/resetPassword.js.map +0 -1
  268. package/dist/mcp/tools/auth/unlock.d.ts +0 -4
  269. package/dist/mcp/tools/auth/unlock.d.ts.map +0 -1
  270. package/dist/mcp/tools/auth/unlock.js +0 -49
  271. package/dist/mcp/tools/auth/unlock.js.map +0 -1
  272. package/dist/mcp/tools/auth/verify.d.ts +0 -4
  273. package/dist/mcp/tools/auth/verify.d.ts.map +0 -1
  274. package/dist/mcp/tools/auth/verify.js +0 -45
  275. package/dist/mcp/tools/auth/verify.js.map +0 -1
  276. package/dist/mcp/tools/collection/create.d.ts +0 -10
  277. package/dist/mcp/tools/collection/create.d.ts.map +0 -1
  278. package/dist/mcp/tools/collection/create.js +0 -139
  279. package/dist/mcp/tools/collection/create.js.map +0 -1
  280. package/dist/mcp/tools/collection/delete.d.ts +0 -10
  281. package/dist/mcp/tools/collection/delete.d.ts.map +0 -1
  282. package/dist/mcp/tools/collection/delete.js +0 -154
  283. package/dist/mcp/tools/collection/delete.js.map +0 -1
  284. package/dist/mcp/tools/collection/find.d.ts +0 -10
  285. package/dist/mcp/tools/collection/find.d.ts.map +0 -1
  286. package/dist/mcp/tools/collection/find.js +0 -165
  287. package/dist/mcp/tools/collection/find.js.map +0 -1
  288. package/dist/mcp/tools/collection/update.d.ts +0 -10
  289. package/dist/mcp/tools/collection/update.d.ts.map +0 -1
  290. package/dist/mcp/tools/collection/update.js +0 -209
  291. package/dist/mcp/tools/collection/update.js.map +0 -1
  292. package/dist/mcp/tools/config/find.d.ts +0 -10
  293. package/dist/mcp/tools/config/find.d.ts.map +0 -1
  294. package/dist/mcp/tools/config/find.js +0 -97
  295. package/dist/mcp/tools/config/find.js.map +0 -1
  296. package/dist/mcp/tools/config/update.d.ts +0 -10
  297. package/dist/mcp/tools/config/update.d.ts.map +0 -1
  298. package/dist/mcp/tools/config/update.js +0 -215
  299. package/dist/mcp/tools/config/update.js.map +0 -1
  300. package/dist/mcp/tools/global/find.d.ts +0 -5
  301. package/dist/mcp/tools/global/find.d.ts.map +0 -1
  302. package/dist/mcp/tools/global/find.js +0 -84
  303. package/dist/mcp/tools/global/find.js.map +0 -1
  304. package/dist/mcp/tools/global/update.d.ts +0 -6
  305. package/dist/mcp/tools/global/update.d.ts.map +0 -1
  306. package/dist/mcp/tools/global/update.js +0 -126
  307. package/dist/mcp/tools/global/update.js.map +0 -1
  308. package/dist/mcp/tools/job/create.d.ts +0 -10
  309. package/dist/mcp/tools/job/create.d.ts.map +0 -1
  310. package/dist/mcp/tools/job/create.js +0 -293
  311. package/dist/mcp/tools/job/create.js.map +0 -1
  312. package/dist/mcp/tools/job/run.d.ts +0 -10
  313. package/dist/mcp/tools/job/run.d.ts.map +0 -1
  314. package/dist/mcp/tools/job/run.js +0 -131
  315. package/dist/mcp/tools/job/run.js.map +0 -1
  316. package/dist/mcp/tools/job/update.d.ts +0 -11
  317. package/dist/mcp/tools/job/update.d.ts.map +0 -1
  318. package/dist/mcp/tools/job/update.js +0 -186
  319. package/dist/mcp/tools/job/update.js.map +0 -1
  320. package/dist/mcp/tools/resource/create.d.ts +0 -6
  321. package/dist/mcp/tools/resource/create.d.ts.map +0 -1
  322. package/dist/mcp/tools/resource/create.js +0 -124
  323. package/dist/mcp/tools/resource/create.js.map +0 -1
  324. package/dist/mcp/tools/resource/delete.d.ts +0 -5
  325. package/dist/mcp/tools/resource/delete.d.ts.map +0 -1
  326. package/dist/mcp/tools/resource/delete.js +0 -151
  327. package/dist/mcp/tools/resource/delete.js.map +0 -1
  328. package/dist/mcp/tools/resource/find.d.ts +0 -5
  329. package/dist/mcp/tools/resource/find.d.ts.map +0 -1
  330. package/dist/mcp/tools/resource/find.js +0 -170
  331. package/dist/mcp/tools/resource/find.js.map +0 -1
  332. package/dist/mcp/tools/resource/update.d.ts +0 -6
  333. package/dist/mcp/tools/resource/update.d.ts.map +0 -1
  334. package/dist/mcp/tools/resource/update.js +0 -242
  335. package/dist/mcp/tools/resource/update.js.map +0 -1
  336. package/dist/mcp/tools/schemas.d.ts +0 -442
  337. package/dist/mcp/tools/schemas.d.ts.map +0 -1
  338. package/dist/mcp/tools/schemas.js +0 -238
  339. package/dist/mcp/tools/schemas.js.map +0 -1
  340. package/dist/utils/adminEntitySettings.d.ts +0 -17
  341. package/dist/utils/adminEntitySettings.d.ts.map +0 -1
  342. package/dist/utils/adminEntitySettings.js +0 -41
  343. package/dist/utils/adminEntitySettings.js.map +0 -1
  344. package/dist/utils/createApiKeyFields.d.ts +0 -15
  345. package/dist/utils/createApiKeyFields.d.ts.map +0 -1
  346. package/dist/utils/createApiKeyFields.js +0 -57
  347. package/dist/utils/createApiKeyFields.js.map +0 -1
  348. package/dist/utils/getEnabledSlugs.d.ts +0 -13
  349. package/dist/utils/getEnabledSlugs.d.ts.map +0 -1
  350. package/dist/utils/getEnabledSlugs.js +0 -32
  351. package/dist/utils/getEnabledSlugs.js.map +0 -1
  352. package/dist/utils/getVirtualFieldNames.d.ts +0 -14
  353. package/dist/utils/getVirtualFieldNames.d.ts.map +0 -1
  354. package/dist/utils/getVirtualFieldNames.js +0 -35
  355. package/dist/utils/getVirtualFieldNames.js.map +0 -1
  356. package/dist/utils/schemaConversion/convertCollectionSchemaToZod.d.ts +0 -4
  357. package/dist/utils/schemaConversion/convertCollectionSchemaToZod.d.ts.map +0 -1
  358. package/dist/utils/schemaConversion/convertCollectionSchemaToZod.js +0 -61
  359. package/dist/utils/schemaConversion/convertCollectionSchemaToZod.js.map +0 -1
  360. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.d.ts +0 -7
  361. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.d.ts.map +0 -1
  362. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.js +0 -20
  363. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.js.map +0 -1
  364. package/dist/utils/schemaConversion/sanitizeJsonSchema.d.ts +0 -13
  365. package/dist/utils/schemaConversion/sanitizeJsonSchema.d.ts.map +0 -1
  366. package/dist/utils/schemaConversion/sanitizeJsonSchema.js +0 -56
  367. package/dist/utils/schemaConversion/sanitizeJsonSchema.js.map +0 -1
  368. package/dist/utils/schemaConversion/simplifyRelationshipFields.d.ts +0 -20
  369. package/dist/utils/schemaConversion/simplifyRelationshipFields.d.ts.map +0 -1
  370. package/dist/utils/schemaConversion/simplifyRelationshipFields.js +0 -53
  371. package/dist/utils/schemaConversion/simplifyRelationshipFields.js.map +0 -1
  372. package/dist/utils/schemaConversion/transformPointFields.d.ts +0 -3
  373. package/dist/utils/schemaConversion/transformPointFields.d.ts.map +0 -1
  374. package/dist/utils/schemaConversion/transformPointFields.js +0 -51
  375. package/dist/utils/schemaConversion/transformPointFields.js.map +0 -1
  376. package/dist/utils/transformPointDataToPayload.d.ts +0 -7
  377. package/dist/utils/transformPointDataToPayload.d.ts.map +0 -1
  378. package/dist/utils/transformPointDataToPayload.js +0 -28
  379. package/dist/utils/transformPointDataToPayload.js.map +0 -1
  380. package/src/collections/createApiKeysCollection.ts +0 -399
  381. package/src/defaults.ts +0 -3
  382. package/src/endpoints/mcp.ts +0 -26
  383. package/src/endpoints/resolveAccessSettings.ts +0 -74
  384. package/src/endpoints/withRestoredWebGlobals.ts +0 -19
  385. package/src/mcp/createRequest.ts +0 -13
  386. package/src/mcp/getMcpHandler.ts +0 -546
  387. package/src/mcp/helpers/config.ts +0 -213
  388. package/src/mcp/helpers/fields.ts +0 -154
  389. package/src/mcp/helpers/fileValidation.ts +0 -362
  390. package/src/mcp/registerTool.ts +0 -22
  391. package/src/mcp/tools/auth/auth.spec.ts +0 -98
  392. package/src/mcp/tools/auth/auth.ts +0 -89
  393. package/src/mcp/tools/auth/forgotPassword.ts +0 -72
  394. package/src/mcp/tools/auth/login.ts +0 -64
  395. package/src/mcp/tools/auth/resetPassword.ts +0 -61
  396. package/src/mcp/tools/auth/unlock.ts +0 -65
  397. package/src/mcp/tools/auth/verify.ts +0 -57
  398. package/src/mcp/tools/collection/create.ts +0 -210
  399. package/src/mcp/tools/collection/delete.ts +0 -211
  400. package/src/mcp/tools/collection/find.ts +0 -224
  401. package/src/mcp/tools/collection/update.ts +0 -290
  402. package/src/mcp/tools/config/find.ts +0 -128
  403. package/src/mcp/tools/config/update.ts +0 -280
  404. package/src/mcp/tools/global/find.ts +0 -130
  405. package/src/mcp/tools/global/update.ts +0 -209
  406. package/src/mcp/tools/job/create.ts +0 -416
  407. package/src/mcp/tools/job/run.ts +0 -169
  408. package/src/mcp/tools/job/update.ts +0 -274
  409. package/src/mcp/tools/resource/create.ts +0 -211
  410. package/src/mcp/tools/resource/delete.ts +0 -218
  411. package/src/mcp/tools/resource/find.ts +0 -246
  412. package/src/mcp/tools/resource/update.ts +0 -367
  413. package/src/mcp/tools/schemas.ts +0 -499
  414. package/src/utils/adminEntitySettings.ts +0 -40
  415. package/src/utils/createApiKeyFields.ts +0 -72
  416. package/src/utils/getEnabledSlugs.ts +0 -42
  417. package/src/utils/getVirtualFieldNames.ts +0 -53
  418. package/src/utils/schemaConversion/convertCollectionSchemaToZod.ts +0 -72
  419. package/src/utils/schemaConversion/removeVirtualFieldsFromSchema.ts +0 -27
  420. package/src/utils/schemaConversion/sanitizeJsonSchema.ts +0 -62
  421. package/src/utils/schemaConversion/simplifyRelationshipFields.ts +0 -65
  422. package/src/utils/schemaConversion/transformPointFields.ts +0 -55
  423. package/src/utils/transformPointDataToPayload.ts +0 -40
@@ -1,280 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
2
- import type { PayloadRequest } from 'payload'
3
-
4
- import { readFileSync, writeFileSync } from 'fs'
5
-
6
- import {
7
- addCollectionToConfig,
8
- removeCollectionFromConfig,
9
- updateAdminConfig,
10
- updateDatabaseConfig,
11
- updatePluginsConfig,
12
- } from '../../helpers/config.js'
13
- import { toolSchemas } from '../schemas.js'
14
-
15
- export const updateConfig = (
16
- req: PayloadRequest,
17
- verboseLogs: boolean,
18
- configFilePath: string,
19
- updateType: string,
20
- collectionName?: string,
21
- adminConfig?: any,
22
- databaseConfig?: any,
23
- pluginUpdates?: any,
24
- newContent?: string,
25
- ) => {
26
- const payload = req.payload
27
- if (verboseLogs) {
28
- payload.logger.info(`[payload-mcp] Updating config with update type: ${updateType}`)
29
- }
30
-
31
- // Security check: ensure we're working with the specified config file
32
- if (!configFilePath.startsWith(process.cwd()) && !configFilePath.startsWith('/')) {
33
- payload.logger.error(`[payload-mcp] Invalid config path attempted: ${configFilePath}`)
34
- return {
35
- content: [
36
- {
37
- type: 'text' as const,
38
- text: '❌ **Error**: Invalid config path',
39
- },
40
- ],
41
- }
42
- }
43
-
44
- try {
45
- // Read current config
46
- let currentContent: string
47
- try {
48
- currentContent = readFileSync(configFilePath, 'utf8')
49
- } catch (_ignore) {
50
- return {
51
- content: [
52
- {
53
- type: 'text' as const,
54
- text: `❌ **Error**: Config file not found: ${configFilePath}`,
55
- },
56
- ],
57
- }
58
- }
59
-
60
- let updatedContent: string
61
- let updateSummary: string[] = []
62
-
63
- switch (updateType) {
64
- case 'add_collection':
65
- if (!collectionName) {
66
- return {
67
- content: [
68
- {
69
- type: 'text' as const,
70
- text: '❌ **Error**: No collection name provided for add_collection update type',
71
- },
72
- ],
73
- }
74
- }
75
- updatedContent = addCollectionToConfig(currentContent, collectionName)
76
- updateSummary = [`Added collection: ${collectionName}`]
77
- break
78
-
79
- case 'remove_collection':
80
- if (!collectionName) {
81
- return {
82
- content: [
83
- {
84
- type: 'text' as const,
85
- text: '❌ **Error**: No collection name provided for remove_collection update type',
86
- },
87
- ],
88
- }
89
- }
90
- updatedContent = removeCollectionFromConfig(currentContent, collectionName)
91
- updateSummary = [`Removed collection: ${collectionName}`]
92
- break
93
-
94
- case 'replace_content':
95
- if (!newContent) {
96
- return {
97
- content: [
98
- {
99
- type: 'text' as const,
100
- text: '❌ **Error**: No new content provided for replace_content update type',
101
- },
102
- ],
103
- }
104
- }
105
- updatedContent = newContent
106
- updateSummary = ['Replaced entire config content']
107
- break
108
-
109
- case 'update_admin':
110
- if (!adminConfig) {
111
- return {
112
- content: [
113
- {
114
- type: 'text' as const,
115
- text: '❌ **Error**: No admin config provided for update_admin update type',
116
- },
117
- ],
118
- }
119
- }
120
- updatedContent = updateAdminConfig(currentContent, adminConfig)
121
- updateSummary = Object.keys(adminConfig).map((key) => `Updated admin config: ${key}`)
122
- break
123
-
124
- case 'update_database':
125
- if (!databaseConfig) {
126
- return {
127
- content: [
128
- {
129
- type: 'text' as const,
130
- text: '❌ **Error**: No database config provided for update_database update type',
131
- },
132
- ],
133
- }
134
- }
135
- updatedContent = updateDatabaseConfig(currentContent, databaseConfig)
136
- updateSummary = Object.keys(databaseConfig).map((key) => `Updated database config: ${key}`)
137
- break
138
-
139
- case 'update_plugins':
140
- if (!pluginUpdates) {
141
- return {
142
- content: [
143
- {
144
- type: 'text' as const,
145
- text: '❌ **Error**: No plugin updates provided for update_plugins update type',
146
- },
147
- ],
148
- }
149
- }
150
- updatedContent = updatePluginsConfig(currentContent, pluginUpdates)
151
- updateSummary = []
152
- if (pluginUpdates.add) {
153
- updateSummary.push(`Added plugins: ${pluginUpdates.add.join(', ')}`)
154
- }
155
- if (pluginUpdates.remove) {
156
- updateSummary.push(`Removed plugins: ${pluginUpdates.remove.join(', ')}`)
157
- }
158
- break
159
-
160
- default:
161
- return {
162
- content: [
163
- {
164
- type: 'text' as const,
165
- text: `❌ **Error**: Unknown update type: ${updateType}`,
166
- },
167
- ],
168
- }
169
- }
170
-
171
- // Write the updated content back to the file
172
- writeFileSync(configFilePath, updatedContent, 'utf8')
173
- if (verboseLogs) {
174
- payload.logger.info(`[payload-mcp] Successfully updated config file: ${configFilePath}`)
175
- }
176
-
177
- return {
178
- content: [
179
- {
180
- type: 'text' as const,
181
- text: `✅ **Config updated successfully!**
182
-
183
- **File**: \`${configFilePath}\`
184
- **Update Type**: ${updateType}
185
-
186
- **Changes Made**:
187
- ${updateSummary.map((summary) => `- ${summary}`).join('\n')}
188
-
189
- **Updated Config Content:**
190
- \`\`\`typescript
191
- ${updatedContent}
192
- \`\`\``,
193
- },
194
- ],
195
- }
196
- } catch (error) {
197
- const errorMessage = (error as Error).message
198
- payload.logger.error(`[payload-mcp] Error updating config: ${errorMessage}`)
199
- return {
200
- content: [
201
- {
202
- type: 'text' as const,
203
- text: `❌ **Error updating config**: ${errorMessage}`,
204
- },
205
- ],
206
- }
207
- }
208
- }
209
-
210
- export const updateConfigTool = (
211
- server: McpServer,
212
- req: PayloadRequest,
213
- verboseLogs: boolean,
214
- configFilePath: string,
215
- ) => {
216
- const tool = ({
217
- adminConfig,
218
- collectionName,
219
- databaseConfig,
220
- newContent,
221
- pluginUpdates,
222
- updateType,
223
- }: {
224
- adminConfig?: any
225
- collectionName?: string
226
- databaseConfig?: any
227
- newContent?: string
228
- pluginUpdates?: any
229
- updateType: string
230
- }) => {
231
- const payload = req.payload
232
-
233
- if (verboseLogs) {
234
- payload.logger.info(`[payload-mcp] Updating config: ${updateType}`)
235
- }
236
-
237
- try {
238
- const result = updateConfig(
239
- req,
240
- verboseLogs,
241
- configFilePath,
242
- updateType,
243
- collectionName,
244
- adminConfig,
245
- databaseConfig,
246
- pluginUpdates,
247
- newContent,
248
- )
249
-
250
- if (verboseLogs) {
251
- payload.logger.info(`[payload-mcp] Config update completed for: ${updateType}`)
252
- }
253
-
254
- return result
255
- } catch (error) {
256
- const errorMessage = error instanceof Error ? error.message : 'Unknown error'
257
- payload.logger.error(`[payload-mcp] Error updating config: ${errorMessage}`)
258
-
259
- return {
260
- content: [
261
- {
262
- type: 'text' as const,
263
- text: `Error updating config: ${errorMessage}`,
264
- },
265
- ],
266
- }
267
- }
268
- }
269
-
270
- server.registerTool(
271
- 'updateConfig',
272
- {
273
- description: toolSchemas.updateConfig.description,
274
- inputSchema: toolSchemas.updateConfig.parameters.shape,
275
- },
276
- (args) => {
277
- return tool(args)
278
- },
279
- )
280
- }
@@ -1,130 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
2
- import type { PayloadRequest, SelectType, TypedUser } from 'payload'
3
-
4
- import type { MCPPluginConfig } from '../../../types.js'
5
-
6
- import { toCamelCase } from '../../../utils/camelCase.js'
7
- import { toolSchemas } from '../schemas.js'
8
-
9
- export const findGlobalTool = (
10
- server: McpServer,
11
- req: PayloadRequest,
12
- user: TypedUser,
13
- verboseLogs: boolean,
14
- globalSlug: string,
15
- globals: MCPPluginConfig['globals'],
16
- ) => {
17
- const tool = async (
18
- depth: number = 0,
19
- locale?: string,
20
- fallbackLocale?: string,
21
- select?: string,
22
- ): Promise<{
23
- content: Array<{
24
- text: string
25
- type: 'text'
26
- }>
27
- }> => {
28
- const payload = req.payload
29
-
30
- if (verboseLogs) {
31
- payload.logger.info(
32
- `[payload-mcp] Reading global: ${globalSlug}, depth: ${depth}${locale ? `, locale: ${locale}` : ''}`,
33
- )
34
- }
35
-
36
- try {
37
- const findOptions: Parameters<typeof payload.findGlobal>[0] = {
38
- slug: globalSlug,
39
- depth,
40
- overrideAccess: false,
41
- req,
42
- user,
43
- }
44
-
45
- let selectClause: SelectType | undefined
46
- if (select) {
47
- try {
48
- selectClause = JSON.parse(select) as SelectType
49
- } catch (_parseError) {
50
- payload.logger.warn(`[payload-mcp] Invalid select clause JSON for global: ${select}`)
51
- const response = {
52
- content: [{ type: 'text' as const, text: 'Error: Invalid JSON in select clause' }],
53
- }
54
- return (globals?.[globalSlug]?.overrideResponse?.(response, {}, req) || response) as {
55
- content: Array<{
56
- text: string
57
- type: 'text'
58
- }>
59
- }
60
- }
61
- }
62
-
63
- // Add locale parameters if provided
64
- if (locale) {
65
- findOptions.locale = locale
66
- }
67
- if (fallbackLocale) {
68
- findOptions.fallbackLocale = fallbackLocale
69
- }
70
- if (selectClause) {
71
- findOptions.select = selectClause
72
- }
73
-
74
- const result = await payload.findGlobal(findOptions)
75
-
76
- if (verboseLogs) {
77
- payload.logger.info(`[payload-mcp] Found global: ${globalSlug}`)
78
- }
79
-
80
- const response = {
81
- content: [
82
- {
83
- type: 'text' as const,
84
- text: `Global "${globalSlug}":
85
- \`\`\`json
86
- ${JSON.stringify(result)}
87
- \`\`\``,
88
- },
89
- ],
90
- }
91
-
92
- return (globals?.[globalSlug]?.overrideResponse?.(response, result, req) || response) as {
93
- content: Array<{
94
- text: string
95
- type: 'text'
96
- }>
97
- }
98
- } catch (error) {
99
- const errorMessage = error instanceof Error ? error.message : 'Unknown error'
100
- payload.logger.error(`[payload-mcp] Error reading global ${globalSlug}: ${errorMessage}`)
101
- const response = {
102
- content: [
103
- {
104
- type: 'text' as const,
105
- text: `❌ **Error reading global "${globalSlug}":** ${errorMessage}`,
106
- },
107
- ],
108
- }
109
- return (globals?.[globalSlug]?.overrideResponse?.(response, {}, req) || response) as {
110
- content: Array<{
111
- text: string
112
- type: 'text'
113
- }>
114
- }
115
- }
116
- }
117
-
118
- if (globals?.[globalSlug]?.enabled) {
119
- server.registerTool(
120
- `find${globalSlug.charAt(0).toUpperCase() + toCamelCase(globalSlug).slice(1)}`,
121
- {
122
- description: `${toolSchemas.findGlobal.description.trim()}\n\n${globals?.[globalSlug]?.description || ''}`,
123
- inputSchema: toolSchemas.findGlobal.parameters.shape,
124
- },
125
- async ({ depth, fallbackLocale, locale, select }) => {
126
- return await tool(depth, locale, fallbackLocale, select)
127
- },
128
- )
129
- }
130
- }
@@ -1,209 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
2
- import type { JSONSchema4 } from 'json-schema'
3
- import type { PayloadRequest, SelectType, TypedUser } from 'payload'
4
-
5
- import { z } from 'zod'
6
-
7
- import type { MCPPluginConfig } from '../../../types.js'
8
-
9
- import { toCamelCase } from '../../../utils/camelCase.js'
10
- import {
11
- getGlobalVirtualFieldNames,
12
- stripVirtualFields,
13
- } from '../../../utils/getVirtualFieldNames.js'
14
- import { convertCollectionSchemaToZod } from '../../../utils/schemaConversion/convertCollectionSchemaToZod.js'
15
- import { toolSchemas } from '../schemas.js'
16
-
17
- export const updateGlobalTool = (
18
- server: McpServer,
19
- req: PayloadRequest,
20
- user: TypedUser,
21
- verboseLogs: boolean,
22
- globalSlug: string,
23
- globals: MCPPluginConfig['globals'],
24
- schema: JSONSchema4,
25
- ) => {
26
- const tool = async (
27
- data: string,
28
- draft: boolean = false,
29
- depth: number = 0,
30
- locale?: string,
31
- fallbackLocale?: string,
32
- select?: string,
33
- ): Promise<{
34
- content: Array<{
35
- text: string
36
- type: 'text'
37
- }>
38
- }> => {
39
- const payload = req.payload
40
-
41
- if (verboseLogs) {
42
- payload.logger.info(
43
- `[payload-mcp] Updating global: ${globalSlug}, draft: ${draft}${locale ? `, locale: ${locale}` : ''}`,
44
- )
45
- }
46
-
47
- try {
48
- // Parse the data JSON
49
- let parsedData: Record<string, unknown>
50
- try {
51
- parsedData = JSON.parse(data)
52
-
53
- const virtualFieldNames = getGlobalVirtualFieldNames(payload.config, globalSlug)
54
- parsedData = stripVirtualFields(parsedData, virtualFieldNames)
55
-
56
- if (verboseLogs) {
57
- payload.logger.info(
58
- `[payload-mcp] Parsed data for ${globalSlug}: ${JSON.stringify(parsedData)}`,
59
- )
60
- }
61
- } catch (_parseError) {
62
- payload.logger.error(`[payload-mcp] Invalid JSON data provided: ${data}`)
63
- const response = {
64
- content: [{ type: 'text' as const, text: 'Error: Invalid JSON data provided' }],
65
- }
66
- return (globals?.[globalSlug]?.overrideResponse?.(response, {}, req) || response) as {
67
- content: Array<{
68
- text: string
69
- type: 'text'
70
- }>
71
- }
72
- }
73
-
74
- let selectClause: SelectType | undefined
75
- if (select) {
76
- try {
77
- selectClause = JSON.parse(select) as SelectType
78
- } catch (_parseError) {
79
- payload.logger.warn(`[payload-mcp] Invalid select clause JSON for global: ${select}`)
80
- const response = {
81
- content: [{ type: 'text' as const, text: 'Error: Invalid JSON in select clause' }],
82
- }
83
- return (globals?.[globalSlug]?.overrideResponse?.(response, {}, req) || response) as {
84
- content: Array<{
85
- text: string
86
- type: 'text'
87
- }>
88
- }
89
- }
90
- }
91
-
92
- const updateOptions: Parameters<typeof payload.updateGlobal>[0] = {
93
- slug: globalSlug,
94
- data: parsedData,
95
- depth,
96
- draft,
97
- overrideAccess: false,
98
- req,
99
- user,
100
- }
101
-
102
- // Add locale parameters if provided
103
- if (locale) {
104
- updateOptions.locale = locale
105
- }
106
- if (fallbackLocale) {
107
- updateOptions.fallbackLocale = fallbackLocale
108
- }
109
- if (selectClause) {
110
- updateOptions.select = selectClause
111
- }
112
-
113
- const result = await payload.updateGlobal(updateOptions)
114
-
115
- if (verboseLogs) {
116
- payload.logger.info(`[payload-mcp] Successfully updated global: ${globalSlug}`)
117
- }
118
-
119
- const response = {
120
- content: [
121
- {
122
- type: 'text' as const,
123
- text: `Global "${globalSlug}" updated successfully!
124
- \`\`\`json
125
- ${JSON.stringify(result)}
126
- \`\`\``,
127
- },
128
- ],
129
- }
130
-
131
- return (globals?.[globalSlug]?.overrideResponse?.(response, result, req) || response) as {
132
- content: Array<{
133
- text: string
134
- type: 'text'
135
- }>
136
- }
137
- } catch (error) {
138
- const errorMessage = error instanceof Error ? error.message : 'Unknown error'
139
- payload.logger.error(`[payload-mcp] Error updating global ${globalSlug}: ${errorMessage}`)
140
-
141
- const response = {
142
- content: [
143
- {
144
- type: 'text' as const,
145
- text: `Error updating global "${globalSlug}": ${errorMessage}`,
146
- },
147
- ],
148
- }
149
-
150
- return (globals?.[globalSlug]?.overrideResponse?.(response, {}, req) || response) as {
151
- content: Array<{
152
- text: string
153
- type: 'text'
154
- }>
155
- }
156
- }
157
- }
158
-
159
- if (globals?.[globalSlug]?.enabled) {
160
- const convertedFields = convertCollectionSchemaToZod(schema)
161
-
162
- // Make all fields optional for partial updates (PATCH-style)
163
- const optionalFields = Object.fromEntries(
164
- Object.entries(convertedFields.shape).map(([key, value]) => [key, (value as any).optional()]),
165
- )
166
-
167
- const updateGlobalSchema = z.object({
168
- ...optionalFields,
169
- depth: z.number().optional().describe('Optional: Depth of relationships to populate'),
170
- draft: z.boolean().optional().describe('Optional: Whether to save as draft (default: false)'),
171
- fallbackLocale: z
172
- .string()
173
- .optional()
174
- .describe('Optional: fallback locale code to use when requested locale is not available'),
175
- locale: z
176
- .string()
177
- .optional()
178
- .describe(
179
- 'Optional: locale code to update data in (e.g., "en", "es"). Use "all" to update all locales for localized fields',
180
- ),
181
- select: z
182
- .string()
183
- .optional()
184
- .describe(
185
- 'Optional: define exactly which fields you\'d like to return in the response (JSON), e.g., \'{"siteName": "My Site"}\'',
186
- ),
187
- })
188
-
189
- server.registerTool(
190
- `update${globalSlug.charAt(0).toUpperCase() + toCamelCase(globalSlug).slice(1)}`,
191
- {
192
- description: `${toolSchemas.updateGlobal.description.trim()}\n\n${globals?.[globalSlug]?.description || ''}`,
193
- inputSchema: updateGlobalSchema.shape,
194
- },
195
- async (params: Record<string, unknown>) => {
196
- const { depth, draft, fallbackLocale, locale, select, ...rest } = params
197
- const data = JSON.stringify(rest)
198
- return await tool(
199
- data,
200
- draft as boolean,
201
- depth as number,
202
- locale as string,
203
- fallbackLocale as string,
204
- select as string | undefined,
205
- )
206
- },
207
- )
208
- }
209
- }