@payloadcms/plugin-mcp 4.0.0-internal.688c4d0 → 4.0.0-internal.77191e5

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 (494) hide show
  1. package/LICENSE.md +1 -1
  2. package/bin.js +7 -0
  3. package/dist/defaultAccess.d.ts +3 -0
  4. package/dist/defaultAccess.d.ts.map +1 -0
  5. package/dist/defaultAccess.js +3 -0
  6. package/dist/defaultAccess.js.map +1 -0
  7. package/dist/defineTool.d.ts +8 -8
  8. package/dist/defineTool.d.ts.map +1 -1
  9. package/dist/endpoint/access.d.ts +12 -5
  10. package/dist/endpoint/access.d.ts.map +1 -1
  11. package/dist/endpoint/access.js +74 -103
  12. package/dist/endpoint/access.js.map +1 -1
  13. package/dist/endpoint/index.d.ts +1 -1
  14. package/dist/endpoint/index.d.ts.map +1 -1
  15. package/dist/endpoint/index.js +68 -17
  16. package/dist/endpoint/index.js.map +1 -1
  17. package/dist/exports/client.d.ts +1 -4
  18. package/dist/exports/client.d.ts.map +1 -1
  19. package/dist/exports/client.js +1 -4
  20. package/dist/exports/client.js.map +1 -1
  21. package/dist/exports/internal.d.ts +2 -0
  22. package/dist/exports/internal.d.ts.map +1 -0
  23. package/dist/exports/internal.js +3 -0
  24. package/dist/exports/internal.js.map +1 -0
  25. package/dist/index.d.ts +2 -2
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +3 -51
  28. package/dist/index.js.map +1 -1
  29. package/dist/mcp/buildMcpServer.d.ts +5 -5
  30. package/dist/mcp/buildMcpServer.d.ts.map +1 -1
  31. package/dist/mcp/buildMcpServer.js +69 -33
  32. package/dist/mcp/buildMcpServer.js.map +1 -1
  33. package/dist/mcp/builtin/collections/authTools.d.ts.map +1 -1
  34. package/dist/mcp/builtin/collections/authTools.js +122 -61
  35. package/dist/mcp/builtin/collections/authTools.js.map +1 -1
  36. package/dist/mcp/builtin/collections/countTool.d.ts +2 -0
  37. package/dist/mcp/builtin/collections/countTool.d.ts.map +1 -0
  38. package/dist/mcp/builtin/collections/countTool.js +63 -0
  39. package/dist/mcp/builtin/collections/countTool.js.map +1 -0
  40. package/dist/mcp/builtin/collections/countVersionsTool.d.ts +2 -0
  41. package/dist/mcp/builtin/collections/countVersionsTool.d.ts.map +1 -0
  42. package/dist/mcp/builtin/collections/countVersionsTool.js +60 -0
  43. package/dist/mcp/builtin/collections/countVersionsTool.js.map +1 -0
  44. package/dist/mcp/builtin/collections/createTool.d.ts +1 -1
  45. package/dist/mcp/builtin/collections/createTool.d.ts.map +1 -1
  46. package/dist/mcp/builtin/collections/createTool.js +109 -66
  47. package/dist/mcp/builtin/collections/createTool.js.map +1 -1
  48. package/dist/mcp/builtin/collections/deleteTool.d.ts.map +1 -1
  49. package/dist/mcp/builtin/collections/deleteTool.js +53 -44
  50. package/dist/mcp/builtin/collections/deleteTool.js.map +1 -1
  51. package/dist/mcp/builtin/collections/duplicateTool.d.ts +2 -0
  52. package/dist/mcp/builtin/collections/duplicateTool.d.ts.map +1 -0
  53. package/dist/mcp/builtin/collections/duplicateTool.js +90 -0
  54. package/dist/mcp/builtin/collections/duplicateTool.js.map +1 -0
  55. package/dist/mcp/builtin/collections/fileInput.d.ts +28 -0
  56. package/dist/mcp/builtin/collections/fileInput.d.ts.map +1 -0
  57. package/dist/mcp/builtin/collections/fileInput.js +88 -0
  58. package/dist/mcp/builtin/collections/fileInput.js.map +1 -0
  59. package/dist/mcp/builtin/collections/findDistinctTool.d.ts +2 -0
  60. package/dist/mcp/builtin/collections/findDistinctTool.d.ts.map +1 -0
  61. package/dist/mcp/builtin/collections/findDistinctTool.js +77 -0
  62. package/dist/mcp/builtin/collections/findDistinctTool.js.map +1 -0
  63. package/dist/mcp/builtin/collections/findTool.d.ts.map +1 -1
  64. package/dist/mcp/builtin/collections/findTool.js +57 -55
  65. package/dist/mcp/builtin/collections/findTool.js.map +1 -1
  66. package/dist/mcp/builtin/collections/findVersionByIDTool.d.ts +2 -0
  67. package/dist/mcp/builtin/collections/findVersionByIDTool.d.ts.map +1 -0
  68. package/dist/mcp/builtin/collections/findVersionByIDTool.js +74 -0
  69. package/dist/mcp/builtin/collections/findVersionByIDTool.js.map +1 -0
  70. package/dist/mcp/builtin/collections/findVersionsTool.d.ts +2 -0
  71. package/dist/mcp/builtin/collections/findVersionsTool.d.ts.map +1 -0
  72. package/dist/mcp/builtin/collections/findVersionsTool.js +84 -0
  73. package/dist/mcp/builtin/collections/findVersionsTool.js.map +1 -0
  74. package/dist/mcp/builtin/collections/getCollectionSchemaTool.d.ts.map +1 -1
  75. package/dist/mcp/builtin/collections/getCollectionSchemaTool.js +61 -9
  76. package/dist/mcp/builtin/collections/getCollectionSchemaTool.js.map +1 -1
  77. package/dist/mcp/builtin/collections/restoreVersionTool.d.ts +2 -0
  78. package/dist/mcp/builtin/collections/restoreVersionTool.d.ts.map +1 -0
  79. package/dist/mcp/builtin/collections/restoreVersionTool.js +69 -0
  80. package/dist/mcp/builtin/collections/restoreVersionTool.js.map +1 -0
  81. package/dist/mcp/builtin/collections/updateTool.d.ts.map +1 -1
  82. package/dist/mcp/builtin/collections/updateTool.js +75 -102
  83. package/dist/mcp/builtin/collections/updateTool.js.map +1 -1
  84. package/dist/mcp/builtin/collections/uploadInstructionsTool.d.ts +2 -0
  85. package/dist/mcp/builtin/collections/uploadInstructionsTool.d.ts.map +1 -0
  86. package/dist/mcp/builtin/collections/uploadInstructionsTool.js +55 -0
  87. package/dist/mcp/builtin/collections/uploadInstructionsTool.js.map +1 -0
  88. package/dist/mcp/builtin/formatEntityError.d.ts +16 -0
  89. package/dist/mcp/builtin/formatEntityError.d.ts.map +1 -0
  90. package/dist/mcp/builtin/formatEntityError.js +55 -0
  91. package/dist/mcp/builtin/formatEntityError.js.map +1 -0
  92. package/dist/mcp/builtin/getConfigInfoTool.d.ts.map +1 -1
  93. package/dist/mcp/builtin/getConfigInfoTool.js +30 -10
  94. package/dist/mcp/builtin/getConfigInfoTool.js.map +1 -1
  95. package/dist/mcp/builtin/globals/countVersionsTool.d.ts +2 -0
  96. package/dist/mcp/builtin/globals/countVersionsTool.d.ts.map +1 -0
  97. package/dist/mcp/builtin/globals/countVersionsTool.js +60 -0
  98. package/dist/mcp/builtin/globals/countVersionsTool.js.map +1 -0
  99. package/dist/mcp/builtin/globals/findTool.d.ts.map +1 -1
  100. package/dist/mcp/builtin/globals/findTool.js +26 -35
  101. package/dist/mcp/builtin/globals/findTool.js.map +1 -1
  102. package/dist/mcp/builtin/globals/findVersionByIDTool.d.ts +2 -0
  103. package/dist/mcp/builtin/globals/findVersionByIDTool.d.ts.map +1 -0
  104. package/dist/mcp/builtin/globals/findVersionByIDTool.js +68 -0
  105. package/dist/mcp/builtin/globals/findVersionByIDTool.js.map +1 -0
  106. package/dist/mcp/builtin/globals/findVersionsTool.d.ts +2 -0
  107. package/dist/mcp/builtin/globals/findVersionsTool.d.ts.map +1 -0
  108. package/dist/mcp/builtin/globals/findVersionsTool.js +78 -0
  109. package/dist/mcp/builtin/globals/findVersionsTool.js.map +1 -0
  110. package/dist/mcp/builtin/globals/getGlobalSchemaTool.d.ts.map +1 -1
  111. package/dist/mcp/builtin/globals/getGlobalSchemaTool.js +38 -8
  112. package/dist/mcp/builtin/globals/getGlobalSchemaTool.js.map +1 -1
  113. package/dist/mcp/builtin/globals/restoreVersionTool.d.ts +2 -0
  114. package/dist/mcp/builtin/globals/restoreVersionTool.d.ts.map +1 -0
  115. package/dist/mcp/builtin/globals/restoreVersionTool.js +70 -0
  116. package/dist/mcp/builtin/globals/restoreVersionTool.js.map +1 -0
  117. package/dist/mcp/builtin/globals/updateTool.d.ts.map +1 -1
  118. package/dist/mcp/builtin/globals/updateTool.js +38 -54
  119. package/dist/mcp/builtin/globals/updateTool.js.map +1 -1
  120. package/dist/mcp/builtinTools.d.ts +75 -12
  121. package/dist/mcp/builtinTools.d.ts.map +1 -1
  122. package/dist/mcp/builtinTools.js +75 -13
  123. package/dist/mcp/builtinTools.js.map +1 -1
  124. package/dist/mcp/sanitizeMCPConfig.d.ts +0 -1
  125. package/dist/mcp/sanitizeMCPConfig.d.ts.map +1 -1
  126. package/dist/mcp/sanitizeMCPConfig.js +72 -27
  127. package/dist/mcp/sanitizeMCPConfig.js.map +1 -1
  128. package/dist/stdio.d.ts +3 -3
  129. package/dist/stdio.d.ts.map +1 -1
  130. package/dist/stdio.js +84 -46
  131. package/dist/stdio.js.map +1 -1
  132. package/dist/types.d.ts +102 -94
  133. package/dist/types.d.ts.map +1 -1
  134. package/dist/types.js +2 -4
  135. package/dist/types.js.map +1 -1
  136. package/dist/utils/camelCase.d.ts.map +1 -1
  137. package/dist/utils/getPluginConfig.d.ts +1 -1
  138. package/dist/utils/getPluginConfig.js +1 -1
  139. package/dist/utils/getPluginConfig.js.map +1 -1
  140. package/dist/utils/resolveProjectRoot.d.ts.map +1 -1
  141. package/dist/utils/toStandardSchema.d.ts.map +1 -1
  142. package/package.json +11 -19
  143. package/src/defaultAccess.ts +3 -0
  144. package/src/endpoint/access.ts +79 -112
  145. package/src/endpoint/index.ts +58 -16
  146. package/src/exports/client.ts +2 -4
  147. package/src/exports/internal.ts +1 -0
  148. package/src/index.ts +5 -59
  149. package/src/mcp/buildMcpServer.ts +87 -50
  150. package/src/mcp/builtin/collections/authTools.ts +119 -75
  151. package/src/mcp/builtin/collections/countTool.ts +61 -0
  152. package/src/mcp/builtin/collections/countVersionsTool.ts +60 -0
  153. package/src/mcp/builtin/collections/createTool.ts +115 -82
  154. package/src/mcp/builtin/collections/deleteTool.ts +45 -64
  155. package/src/mcp/builtin/collections/duplicateTool.ts +84 -0
  156. package/src/mcp/builtin/collections/fileInput.spec.ts +93 -0
  157. package/src/mcp/builtin/collections/fileInput.ts +127 -0
  158. package/src/mcp/builtin/collections/findDistinctTool.ts +67 -0
  159. package/src/mcp/builtin/collections/findTool.ts +53 -96
  160. package/src/mcp/builtin/collections/findVersionByIDTool.ts +66 -0
  161. package/src/mcp/builtin/collections/findVersionsTool.ts +83 -0
  162. package/src/mcp/builtin/collections/getCollectionSchemaTool.ts +58 -6
  163. package/src/mcp/builtin/collections/restoreVersionTool.ts +65 -0
  164. package/src/mcp/builtin/collections/updateTool.ts +72 -110
  165. package/src/mcp/builtin/collections/uploadInstructionsTool.ts +64 -0
  166. package/src/mcp/builtin/formatEntityError.ts +77 -0
  167. package/src/mcp/builtin/getConfigInfoTool.ts +29 -5
  168. package/src/mcp/builtin/globals/countVersionsTool.ts +60 -0
  169. package/src/mcp/builtin/globals/findTool.ts +26 -56
  170. package/src/mcp/builtin/globals/findVersionByIDTool.ts +64 -0
  171. package/src/mcp/builtin/globals/findVersionsTool.ts +69 -0
  172. package/src/mcp/builtin/globals/getGlobalSchemaTool.ts +41 -6
  173. package/src/mcp/builtin/globals/restoreVersionTool.ts +68 -0
  174. package/src/mcp/builtin/globals/updateTool.ts +48 -71
  175. package/src/mcp/builtinTools.ts +81 -18
  176. package/src/mcp/sanitizeMCPConfig.ts +51 -30
  177. package/src/stdio.ts +79 -46
  178. package/src/types.ts +110 -97
  179. package/src/utils/getPluginConfig.ts +1 -1
  180. package/dist/@types/assets.d.js +0 -2
  181. package/dist/@types/assets.d.js.map +0 -1
  182. package/dist/collection/getAccessField.d.ts +0 -12
  183. package/dist/collection/getAccessField.d.ts.map +0 -1
  184. package/dist/collection/getAccessField.js +0 -72
  185. package/dist/collection/getAccessField.js.map +0 -1
  186. package/dist/collection/index.d.ts +0 -6
  187. package/dist/collection/index.d.ts.map +0 -1
  188. package/dist/collection/index.js +0 -105
  189. package/dist/collection/index.js.map +0 -1
  190. package/dist/components/APIKeyField/index.client.d.ts +0 -9
  191. package/dist/components/APIKeyField/index.client.d.ts.map +0 -1
  192. package/dist/components/APIKeyField/index.client.js +0 -85
  193. package/dist/components/APIKeyField/index.client.js.map +0 -1
  194. package/dist/components/APIKeyField/index.css +0 -105
  195. package/dist/components/APIKeysEmptyState/index.client.d.ts +0 -4
  196. package/dist/components/APIKeysEmptyState/index.client.d.ts.map +0 -1
  197. package/dist/components/APIKeysEmptyState/index.client.js +0 -21
  198. package/dist/components/APIKeysEmptyState/index.client.js.map +0 -1
  199. package/dist/components/AccessField/index.client.d.ts +0 -10
  200. package/dist/components/AccessField/index.client.d.ts.map +0 -1
  201. package/dist/components/AccessField/index.client.js +0 -247
  202. package/dist/components/AccessField/index.client.js.map +0 -1
  203. package/dist/components/AccessField/index.css +0 -99
  204. package/dist/components/SettingsMenu/index.client.d.ts +0 -8
  205. package/dist/components/SettingsMenu/index.client.d.ts.map +0 -1
  206. package/dist/components/SettingsMenu/index.client.js +0 -29
  207. package/dist/components/SettingsMenu/index.client.js.map +0 -1
  208. package/dist/mcp/builtin/collections/formatCollectionError.d.ts +0 -9
  209. package/dist/mcp/builtin/collections/formatCollectionError.d.ts.map +0 -1
  210. package/dist/mcp/builtin/collections/formatCollectionError.js +0 -60
  211. package/dist/mcp/builtin/collections/formatCollectionError.js.map +0 -1
  212. package/dist/mcp/builtin/validateEntityData.d.ts +0 -14
  213. package/dist/mcp/builtin/validateEntityData.d.ts.map +0 -1
  214. package/dist/mcp/builtin/validateEntityData.js +0 -82
  215. package/dist/mcp/builtin/validateEntityData.js.map +0 -1
  216. package/dist/translations/index.d.ts +0 -11
  217. package/dist/translations/index.d.ts.map +0 -1
  218. package/dist/translations/index.js +0 -92
  219. package/dist/translations/index.js.map +0 -1
  220. package/dist/translations/languages/ar.d.ts +0 -31
  221. package/dist/translations/languages/ar.d.ts.map +0 -1
  222. package/dist/translations/languages/ar.js +0 -34
  223. package/dist/translations/languages/ar.js.map +0 -1
  224. package/dist/translations/languages/az.d.ts +0 -31
  225. package/dist/translations/languages/az.d.ts.map +0 -1
  226. package/dist/translations/languages/az.js +0 -34
  227. package/dist/translations/languages/az.js.map +0 -1
  228. package/dist/translations/languages/bg.d.ts +0 -31
  229. package/dist/translations/languages/bg.d.ts.map +0 -1
  230. package/dist/translations/languages/bg.js +0 -34
  231. package/dist/translations/languages/bg.js.map +0 -1
  232. package/dist/translations/languages/bnBd.d.ts +0 -31
  233. package/dist/translations/languages/bnBd.d.ts.map +0 -1
  234. package/dist/translations/languages/bnBd.js +0 -34
  235. package/dist/translations/languages/bnBd.js.map +0 -1
  236. package/dist/translations/languages/bnIn.d.ts +0 -31
  237. package/dist/translations/languages/bnIn.d.ts.map +0 -1
  238. package/dist/translations/languages/bnIn.js +0 -34
  239. package/dist/translations/languages/bnIn.js.map +0 -1
  240. package/dist/translations/languages/ca.d.ts +0 -31
  241. package/dist/translations/languages/ca.d.ts.map +0 -1
  242. package/dist/translations/languages/ca.js +0 -34
  243. package/dist/translations/languages/ca.js.map +0 -1
  244. package/dist/translations/languages/cs.d.ts +0 -31
  245. package/dist/translations/languages/cs.d.ts.map +0 -1
  246. package/dist/translations/languages/cs.js +0 -34
  247. package/dist/translations/languages/cs.js.map +0 -1
  248. package/dist/translations/languages/da.d.ts +0 -31
  249. package/dist/translations/languages/da.d.ts.map +0 -1
  250. package/dist/translations/languages/da.js +0 -34
  251. package/dist/translations/languages/da.js.map +0 -1
  252. package/dist/translations/languages/de.d.ts +0 -31
  253. package/dist/translations/languages/de.d.ts.map +0 -1
  254. package/dist/translations/languages/de.js +0 -34
  255. package/dist/translations/languages/de.js.map +0 -1
  256. package/dist/translations/languages/en.d.ts +0 -31
  257. package/dist/translations/languages/en.d.ts.map +0 -1
  258. package/dist/translations/languages/en.js +0 -34
  259. package/dist/translations/languages/en.js.map +0 -1
  260. package/dist/translations/languages/es.d.ts +0 -31
  261. package/dist/translations/languages/es.d.ts.map +0 -1
  262. package/dist/translations/languages/es.js +0 -34
  263. package/dist/translations/languages/es.js.map +0 -1
  264. package/dist/translations/languages/et.d.ts +0 -31
  265. package/dist/translations/languages/et.d.ts.map +0 -1
  266. package/dist/translations/languages/et.js +0 -34
  267. package/dist/translations/languages/et.js.map +0 -1
  268. package/dist/translations/languages/fa.d.ts +0 -31
  269. package/dist/translations/languages/fa.d.ts.map +0 -1
  270. package/dist/translations/languages/fa.js +0 -34
  271. package/dist/translations/languages/fa.js.map +0 -1
  272. package/dist/translations/languages/fr.d.ts +0 -31
  273. package/dist/translations/languages/fr.d.ts.map +0 -1
  274. package/dist/translations/languages/fr.js +0 -34
  275. package/dist/translations/languages/fr.js.map +0 -1
  276. package/dist/translations/languages/he.d.ts +0 -31
  277. package/dist/translations/languages/he.d.ts.map +0 -1
  278. package/dist/translations/languages/he.js +0 -34
  279. package/dist/translations/languages/he.js.map +0 -1
  280. package/dist/translations/languages/hr.d.ts +0 -31
  281. package/dist/translations/languages/hr.d.ts.map +0 -1
  282. package/dist/translations/languages/hr.js +0 -34
  283. package/dist/translations/languages/hr.js.map +0 -1
  284. package/dist/translations/languages/hu.d.ts +0 -31
  285. package/dist/translations/languages/hu.d.ts.map +0 -1
  286. package/dist/translations/languages/hu.js +0 -34
  287. package/dist/translations/languages/hu.js.map +0 -1
  288. package/dist/translations/languages/hy.d.ts +0 -31
  289. package/dist/translations/languages/hy.d.ts.map +0 -1
  290. package/dist/translations/languages/hy.js +0 -34
  291. package/dist/translations/languages/hy.js.map +0 -1
  292. package/dist/translations/languages/id.d.ts +0 -31
  293. package/dist/translations/languages/id.d.ts.map +0 -1
  294. package/dist/translations/languages/id.js +0 -34
  295. package/dist/translations/languages/id.js.map +0 -1
  296. package/dist/translations/languages/is.d.ts +0 -31
  297. package/dist/translations/languages/is.d.ts.map +0 -1
  298. package/dist/translations/languages/is.js +0 -34
  299. package/dist/translations/languages/is.js.map +0 -1
  300. package/dist/translations/languages/it.d.ts +0 -31
  301. package/dist/translations/languages/it.d.ts.map +0 -1
  302. package/dist/translations/languages/it.js +0 -34
  303. package/dist/translations/languages/it.js.map +0 -1
  304. package/dist/translations/languages/ja.d.ts +0 -31
  305. package/dist/translations/languages/ja.d.ts.map +0 -1
  306. package/dist/translations/languages/ja.js +0 -34
  307. package/dist/translations/languages/ja.js.map +0 -1
  308. package/dist/translations/languages/ko.d.ts +0 -31
  309. package/dist/translations/languages/ko.d.ts.map +0 -1
  310. package/dist/translations/languages/ko.js +0 -34
  311. package/dist/translations/languages/ko.js.map +0 -1
  312. package/dist/translations/languages/lt.d.ts +0 -31
  313. package/dist/translations/languages/lt.d.ts.map +0 -1
  314. package/dist/translations/languages/lt.js +0 -34
  315. package/dist/translations/languages/lt.js.map +0 -1
  316. package/dist/translations/languages/lv.d.ts +0 -31
  317. package/dist/translations/languages/lv.d.ts.map +0 -1
  318. package/dist/translations/languages/lv.js +0 -34
  319. package/dist/translations/languages/lv.js.map +0 -1
  320. package/dist/translations/languages/my.d.ts +0 -31
  321. package/dist/translations/languages/my.d.ts.map +0 -1
  322. package/dist/translations/languages/my.js +0 -34
  323. package/dist/translations/languages/my.js.map +0 -1
  324. package/dist/translations/languages/nb.d.ts +0 -31
  325. package/dist/translations/languages/nb.d.ts.map +0 -1
  326. package/dist/translations/languages/nb.js +0 -34
  327. package/dist/translations/languages/nb.js.map +0 -1
  328. package/dist/translations/languages/nl.d.ts +0 -31
  329. package/dist/translations/languages/nl.d.ts.map +0 -1
  330. package/dist/translations/languages/nl.js +0 -34
  331. package/dist/translations/languages/nl.js.map +0 -1
  332. package/dist/translations/languages/pl.d.ts +0 -31
  333. package/dist/translations/languages/pl.d.ts.map +0 -1
  334. package/dist/translations/languages/pl.js +0 -34
  335. package/dist/translations/languages/pl.js.map +0 -1
  336. package/dist/translations/languages/pt.d.ts +0 -31
  337. package/dist/translations/languages/pt.d.ts.map +0 -1
  338. package/dist/translations/languages/pt.js +0 -34
  339. package/dist/translations/languages/pt.js.map +0 -1
  340. package/dist/translations/languages/ro.d.ts +0 -31
  341. package/dist/translations/languages/ro.d.ts.map +0 -1
  342. package/dist/translations/languages/ro.js +0 -34
  343. package/dist/translations/languages/ro.js.map +0 -1
  344. package/dist/translations/languages/rs.d.ts +0 -31
  345. package/dist/translations/languages/rs.d.ts.map +0 -1
  346. package/dist/translations/languages/rs.js +0 -34
  347. package/dist/translations/languages/rs.js.map +0 -1
  348. package/dist/translations/languages/rsLatin.d.ts +0 -31
  349. package/dist/translations/languages/rsLatin.d.ts.map +0 -1
  350. package/dist/translations/languages/rsLatin.js +0 -34
  351. package/dist/translations/languages/rsLatin.js.map +0 -1
  352. package/dist/translations/languages/ru.d.ts +0 -31
  353. package/dist/translations/languages/ru.d.ts.map +0 -1
  354. package/dist/translations/languages/ru.js +0 -34
  355. package/dist/translations/languages/ru.js.map +0 -1
  356. package/dist/translations/languages/sk.d.ts +0 -31
  357. package/dist/translations/languages/sk.d.ts.map +0 -1
  358. package/dist/translations/languages/sk.js +0 -34
  359. package/dist/translations/languages/sk.js.map +0 -1
  360. package/dist/translations/languages/sl.d.ts +0 -31
  361. package/dist/translations/languages/sl.d.ts.map +0 -1
  362. package/dist/translations/languages/sl.js +0 -34
  363. package/dist/translations/languages/sl.js.map +0 -1
  364. package/dist/translations/languages/sv.d.ts +0 -31
  365. package/dist/translations/languages/sv.d.ts.map +0 -1
  366. package/dist/translations/languages/sv.js +0 -34
  367. package/dist/translations/languages/sv.js.map +0 -1
  368. package/dist/translations/languages/ta.d.ts +0 -31
  369. package/dist/translations/languages/ta.d.ts.map +0 -1
  370. package/dist/translations/languages/ta.js +0 -34
  371. package/dist/translations/languages/ta.js.map +0 -1
  372. package/dist/translations/languages/th.d.ts +0 -31
  373. package/dist/translations/languages/th.d.ts.map +0 -1
  374. package/dist/translations/languages/th.js +0 -34
  375. package/dist/translations/languages/th.js.map +0 -1
  376. package/dist/translations/languages/tr.d.ts +0 -31
  377. package/dist/translations/languages/tr.d.ts.map +0 -1
  378. package/dist/translations/languages/tr.js +0 -34
  379. package/dist/translations/languages/tr.js.map +0 -1
  380. package/dist/translations/languages/uk.d.ts +0 -31
  381. package/dist/translations/languages/uk.d.ts.map +0 -1
  382. package/dist/translations/languages/uk.js +0 -34
  383. package/dist/translations/languages/uk.js.map +0 -1
  384. package/dist/translations/languages/vi.d.ts +0 -31
  385. package/dist/translations/languages/vi.d.ts.map +0 -1
  386. package/dist/translations/languages/vi.js +0 -34
  387. package/dist/translations/languages/vi.js.map +0 -1
  388. package/dist/translations/languages/zh.d.ts +0 -31
  389. package/dist/translations/languages/zh.d.ts.map +0 -1
  390. package/dist/translations/languages/zh.js +0 -34
  391. package/dist/translations/languages/zh.js.map +0 -1
  392. package/dist/translations/languages/zhTw.d.ts +0 -31
  393. package/dist/translations/languages/zhTw.d.ts.map +0 -1
  394. package/dist/translations/languages/zhTw.js +0 -34
  395. package/dist/translations/languages/zhTw.js.map +0 -1
  396. package/dist/translations/types.d.ts +0 -32
  397. package/dist/translations/types.d.ts.map +0 -1
  398. package/dist/translations/types.js +0 -3
  399. package/dist/translations/types.js.map +0 -1
  400. package/dist/utils/getVirtualFieldNames.d.ts +0 -14
  401. package/dist/utils/getVirtualFieldNames.d.ts.map +0 -1
  402. package/dist/utils/getVirtualFieldNames.js +0 -35
  403. package/dist/utils/getVirtualFieldNames.js.map +0 -1
  404. package/dist/utils/localAPIDefaults.d.ts +0 -20
  405. package/dist/utils/localAPIDefaults.d.ts.map +0 -1
  406. package/dist/utils/localAPIDefaults.js +0 -19
  407. package/dist/utils/localAPIDefaults.js.map +0 -1
  408. package/dist/utils/schemaConversion/getEntityInputSchema.d.ts +0 -11
  409. package/dist/utils/schemaConversion/getEntityInputSchema.d.ts.map +0 -1
  410. package/dist/utils/schemaConversion/getEntityInputSchema.js +0 -34
  411. package/dist/utils/schemaConversion/getEntityInputSchema.js.map +0 -1
  412. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.d.ts +0 -7
  413. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.d.ts.map +0 -1
  414. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.js +0 -20
  415. package/dist/utils/schemaConversion/removeVirtualFieldsFromSchema.js.map +0 -1
  416. package/dist/utils/schemaConversion/sanitizeEntitySchema.d.ts +0 -15
  417. package/dist/utils/schemaConversion/sanitizeEntitySchema.d.ts.map +0 -1
  418. package/dist/utils/schemaConversion/sanitizeEntitySchema.js +0 -464
  419. package/dist/utils/schemaConversion/sanitizeEntitySchema.js.map +0 -1
  420. package/dist/utils/schemaConversion/sanitizeEntitySchema.spec.js +0 -158
  421. package/dist/utils/schemaConversion/sanitizeEntitySchema.spec.js.map +0 -1
  422. package/dist/utils/transformPointDataToPayload.d.ts +0 -7
  423. package/dist/utils/transformPointDataToPayload.d.ts.map +0 -1
  424. package/dist/utils/transformPointDataToPayload.js +0 -28
  425. package/dist/utils/transformPointDataToPayload.js.map +0 -1
  426. package/dist/utils/whereSchema.d.ts +0 -9
  427. package/dist/utils/whereSchema.d.ts.map +0 -1
  428. package/dist/utils/whereSchema.js +0 -13
  429. package/dist/utils/whereSchema.js.map +0 -1
  430. package/src/@types/assets.d.ts +0 -3
  431. package/src/collection/getAccessField.ts +0 -84
  432. package/src/collection/index.ts +0 -105
  433. package/src/components/APIKeyField/index.client.tsx +0 -73
  434. package/src/components/APIKeyField/index.css +0 -105
  435. package/src/components/APIKeysEmptyState/index.client.tsx +0 -36
  436. package/src/components/AccessField/index.client.tsx +0 -299
  437. package/src/components/AccessField/index.css +0 -99
  438. package/src/components/SettingsMenu/index.client.tsx +0 -34
  439. package/src/mcp/builtin/collections/formatCollectionError.ts +0 -84
  440. package/src/mcp/builtin/validateEntityData.ts +0 -132
  441. package/src/translations/index.ts +0 -108
  442. package/src/translations/languages/ar.ts +0 -35
  443. package/src/translations/languages/az.ts +0 -35
  444. package/src/translations/languages/bg.ts +0 -35
  445. package/src/translations/languages/bnBd.ts +0 -35
  446. package/src/translations/languages/bnIn.ts +0 -35
  447. package/src/translations/languages/ca.ts +0 -35
  448. package/src/translations/languages/cs.ts +0 -35
  449. package/src/translations/languages/da.ts +0 -35
  450. package/src/translations/languages/de.ts +0 -35
  451. package/src/translations/languages/en.ts +0 -35
  452. package/src/translations/languages/es.ts +0 -35
  453. package/src/translations/languages/et.ts +0 -35
  454. package/src/translations/languages/fa.ts +0 -35
  455. package/src/translations/languages/fr.ts +0 -35
  456. package/src/translations/languages/he.ts +0 -35
  457. package/src/translations/languages/hr.ts +0 -35
  458. package/src/translations/languages/hu.ts +0 -35
  459. package/src/translations/languages/hy.ts +0 -35
  460. package/src/translations/languages/id.ts +0 -35
  461. package/src/translations/languages/is.ts +0 -35
  462. package/src/translations/languages/it.ts +0 -35
  463. package/src/translations/languages/ja.ts +0 -35
  464. package/src/translations/languages/ko.ts +0 -35
  465. package/src/translations/languages/lt.ts +0 -35
  466. package/src/translations/languages/lv.ts +0 -35
  467. package/src/translations/languages/my.ts +0 -35
  468. package/src/translations/languages/nb.ts +0 -35
  469. package/src/translations/languages/nl.ts +0 -35
  470. package/src/translations/languages/pl.ts +0 -35
  471. package/src/translations/languages/pt.ts +0 -35
  472. package/src/translations/languages/ro.ts +0 -35
  473. package/src/translations/languages/rs.ts +0 -35
  474. package/src/translations/languages/rsLatin.ts +0 -35
  475. package/src/translations/languages/ru.ts +0 -35
  476. package/src/translations/languages/sk.ts +0 -35
  477. package/src/translations/languages/sl.ts +0 -35
  478. package/src/translations/languages/sv.ts +0 -35
  479. package/src/translations/languages/ta.ts +0 -35
  480. package/src/translations/languages/th.ts +0 -35
  481. package/src/translations/languages/tr.ts +0 -35
  482. package/src/translations/languages/uk.ts +0 -35
  483. package/src/translations/languages/vi.ts +0 -35
  484. package/src/translations/languages/zh.ts +0 -35
  485. package/src/translations/languages/zhTw.ts +0 -35
  486. package/src/translations/types.ts +0 -34
  487. package/src/utils/getVirtualFieldNames.ts +0 -53
  488. package/src/utils/localAPIDefaults.ts +0 -22
  489. package/src/utils/schemaConversion/getEntityInputSchema.ts +0 -78
  490. package/src/utils/schemaConversion/removeVirtualFieldsFromSchema.ts +0 -27
  491. package/src/utils/schemaConversion/sanitizeEntitySchema.spec.ts +0 -103
  492. package/src/utils/schemaConversion/sanitizeEntitySchema.ts +0 -529
  493. package/src/utils/transformPointDataToPayload.ts +0 -40
  494. package/src/utils/whereSchema.ts +0 -24
package/src/types.ts CHANGED
@@ -6,18 +6,18 @@ import type {
6
6
  ResourceTemplate,
7
7
  ServerContext,
8
8
  StandardSchemaWithJSON,
9
+ ToolAnnotations,
9
10
  } from '@modelcontextprotocol/server'
10
11
  import type {
11
12
  AuthCollectionSlug,
12
- CollectionConfig,
13
13
  CollectionSlug,
14
- DefaultDocumentIDType,
15
14
  GlobalSlug,
16
15
  MaybePromise,
17
16
  PayloadRequest,
18
- TypedUser,
17
+ SanitizedPermissions,
19
18
  } from 'payload'
20
19
 
20
+ import type { GetAuthorizedMCPArgs } from './endpoint/access.js'
21
21
  import type {
22
22
  MCPCollectionAuthToolName,
23
23
  MCPCollectionBuiltinName,
@@ -26,36 +26,16 @@ import type {
26
26
 
27
27
  export type { MCPCollectionAuthToolName, MCPCollectionBuiltinName, MCPGlobalBuiltinName }
28
28
 
29
- /** Re-exported from `@modelcontextprotocol/server` — the JSON Schema shape the MCP runtime validates against. */
30
- export type { JsonSchemaType, StandardSchemaWithJSON }
29
+ /** Re-exported from `@modelcontextprotocol/server` — common MCP types used in plugin config. */
30
+ export type { JsonSchemaType, StandardSchemaWithJSON, ToolAnnotations }
31
31
 
32
32
  /**
33
33
  * What a tool's `input` (or a prompt's `argsSchema`) can be — either a raw
34
- * JSON Schema literal, or a Standard Schema instance (Zod, Valibot, …).
34
+ * JSON Schema 2020-12 literal, or a Standard Schema instance (Zod, Valibot, …).
35
+ * Raw schemas may omit `$schema`; when present it must declare the 2020-12 dialect.
35
36
  */
36
37
  export type ToolInputSchema = JsonSchemaType | StandardSchemaWithJSON
37
38
 
38
- /**
39
- * Serializable mirror of `SanitizedMCPPluginConfig` for client components —
40
- * the full sanitized config carries functions (tool handlers, etc.) that can't
41
- * cross the server→client boundary. Built by `sanitizeClientPluginConfig` and
42
- * passed to the `AccessField` component via `clientProps`.
43
- *
44
- * @internal
45
- */
46
- export type ClientMCPPluginConfig = {
47
- items: Array<{
48
- collectionSlug?: string
49
- configKey: string
50
- description?: string
51
- globalSlug?: string
52
- /** Admin-UI bucket for collection/global tools: built-in CRUD, auth, or custom. */
53
- group?: 'auth' | 'custom' | 'operations'
54
- label: string
55
- type: 'collectionTool' | 'globalTool' | 'prompt' | 'resource' | 'tool'
56
- }>
57
- }
58
-
59
39
  export type MCPToolResponse = {
60
40
  content: ContentBlock[]
61
41
  /**
@@ -72,6 +52,13 @@ export type MCPResponseOverride = (
72
52
  req: PayloadRequest,
73
53
  ) => MCPToolResponse
74
54
 
55
+ export type MCPAfterToolCallHook = (args: {
56
+ input: unknown
57
+ req: PayloadRequest
58
+ response: MCPToolResponse
59
+ toolName: string
60
+ }) => MaybePromise<MCPToolResponse>
61
+
75
62
  /**
76
63
  * The handler's `input` type. A specific Standard Schema (Zod, Valibot, …) gets
77
64
  * its inferred output; anything else falls back to `Record<string, unknown>`.
@@ -82,6 +69,19 @@ export type TypedInput<TSchema> = TSchema extends StandardSchemaWithJSON
82
69
  : StandardSchemaWithJSON.InferOutput<TSchema>
83
70
  : Record<string, unknown>
84
71
 
72
+ export type MCPAccessArgs = {
73
+ permissions?: SanitizedPermissions
74
+ req: PayloadRequest
75
+ }
76
+
77
+ export type CollectionMCPAccessArgs = {
78
+ slug: CollectionSlug
79
+ } & MCPAccessArgs
80
+
81
+ export type GlobalMCPAccessArgs = {
82
+ slug: GlobalSlug
83
+ } & MCPAccessArgs
84
+
85
85
  export type ToolHandlerArgs<TSchema = undefined> = {
86
86
  authorizedMCP: AuthorizedMCP
87
87
  input: TypedInput<TSchema>
@@ -90,14 +90,21 @@ export type ToolHandlerArgs<TSchema = undefined> = {
90
90
  }
91
91
 
92
92
  export type CollectionToolHandlerArgs<TSchema = undefined> = {
93
- collectionSlug: CollectionSlug
93
+ slug: CollectionSlug
94
94
  } & ToolHandlerArgs<TSchema>
95
95
 
96
96
  export type GlobalToolHandlerArgs<TSchema = undefined> = {
97
- globalSlug: GlobalSlug
97
+ slug: GlobalSlug
98
98
  } & ToolHandlerArgs<TSchema>
99
99
 
100
100
  export type Tool<TSchema extends ToolInputSchema | undefined = ToolInputSchema | undefined> = {
101
+ /**
102
+ * Runs while authorizing each MCP request, before the tool is advertised or called. Return
103
+ * `false` to make the tool unavailable for that request. This is skipped when `overrideAccess`
104
+ * is enabled.
105
+ */
106
+ access?: (args: MCPAccessArgs) => MaybePromise<boolean>
107
+ annotations?: ToolAnnotations
101
108
  description: string
102
109
  handler: (args: ToolHandlerArgs<TSchema>) => MaybePromise<MCPToolResponse>
103
110
  input?: TSchema
@@ -110,22 +117,54 @@ export type Tool<TSchema extends ToolInputSchema | undefined = ToolInputSchema |
110
117
  export type CollectionTool<
111
118
  TSchema extends ToolInputSchema | undefined = ToolInputSchema | undefined,
112
119
  > = {
120
+ /**
121
+ * Runs while authorizing each MCP request for this collection. Return `false` to reject calls
122
+ * to this tool for the collection. The shared tool is not advertised when no collections allow
123
+ * it, but can remain advertised when it is available for another collection. This is skipped
124
+ * when `overrideAccess` is enabled.
125
+ */
126
+ access?: (args: CollectionMCPAccessArgs) => MaybePromise<boolean>
113
127
  handler: (args: CollectionToolHandlerArgs<TSchema>) => MaybePromise<MCPToolResponse>
114
128
  input?: TSchema
115
- } & Pick<Tool, 'description' | 'overrideResponse'>
129
+ } & Pick<Tool, 'annotations' | 'description' | 'overrideResponse'>
116
130
 
117
131
  export type GlobalTool<TSchema extends ToolInputSchema | undefined = ToolInputSchema | undefined> =
118
132
  {
133
+ /**
134
+ * Runs while authorizing each MCP request for this global. Return `false` to reject calls to
135
+ * this tool for the global. The shared tool is not advertised when no globals allow it, but
136
+ * can remain advertised when it is available for another global. This is skipped when
137
+ * `overrideAccess` is enabled.
138
+ */
139
+ access?: (args: GlobalMCPAccessArgs) => MaybePromise<boolean>
119
140
  handler: (args: GlobalToolHandlerArgs<TSchema>) => MaybePromise<MCPToolResponse>
120
141
  input?: TSchema
121
- } & Pick<Tool, 'description' | 'overrideResponse'>
142
+ } & Pick<Tool, 'annotations' | 'description' | 'overrideResponse'>
122
143
 
123
144
  /**
124
145
  * Configures (or disables) a built-in tool without replacing it.
125
146
  * `handler?: never` prevents a full `CollectionTool`/`GlobalTool` (which has a
126
147
  * required handler) from being silently accepted at a built-in key slot.
127
148
  */
128
- export type MCPBuiltInToolOverride = {
149
+ export type MCPBuiltInCollectionToolOverride = {
150
+ /**
151
+ * Replaces the built-in tool's access check. Return `false` to make the tool unavailable for
152
+ * this collection. This is skipped when `overrideAccess` is enabled.
153
+ */
154
+ access?: (args: CollectionMCPAccessArgs) => MaybePromise<boolean>
155
+ annotations?: ToolAnnotations
156
+ description?: string
157
+ handler?: never
158
+ overrideResponse?: MCPResponseOverride
159
+ }
160
+
161
+ export type MCPBuiltInGlobalToolOverride = {
162
+ /**
163
+ * Replaces the built-in tool's access check. Return `false` to make the tool unavailable for
164
+ * this global. This is skipped when `overrideAccess` is enabled.
165
+ */
166
+ access?: (args: GlobalMCPAccessArgs) => MaybePromise<boolean>
167
+ annotations?: ToolAnnotations
129
168
  description?: string
130
169
  handler?: never
131
170
  overrideResponse?: MCPResponseOverride
@@ -139,13 +178,13 @@ export type MCPBuiltInToolOverride = {
139
178
  export type MCPTopLevelToolEntry = Tool
140
179
 
141
180
  export type MCPCollectionToolsMap = {
142
- [customToolName: string]: boolean | CollectionTool | MCPBuiltInToolOverride | undefined
181
+ [customToolName: string]: boolean | CollectionTool | MCPBuiltInCollectionToolOverride | undefined
143
182
  } & {
144
- [K in MCPCollectionBuiltinName]?: false | MCPBuiltInToolOverride
183
+ [K in MCPCollectionBuiltinName]?: false | MCPBuiltInCollectionToolOverride
145
184
  }
146
185
 
147
186
  export type MCPAuthCollectionToolsMap = {
148
- [K in MCPCollectionAuthToolName]?: MCPBuiltInToolOverride | true
187
+ [K in MCPCollectionAuthToolName]?: MCPBuiltInCollectionToolOverride | true
149
188
  } & MCPCollectionToolsMap
150
189
 
151
190
  /** Auth-enabled collections get auth-tool name autocomplete; others get CRUD-only. */
@@ -154,9 +193,9 @@ export type MCPToolsMapForCollection<Slug extends CollectionSlug> = Slug extends
154
193
  : MCPCollectionToolsMap
155
194
 
156
195
  export type MCPGlobalToolsMap = {
157
- [customToolName: string]: boolean | GlobalTool | MCPBuiltInToolOverride | undefined
196
+ [customToolName: string]: boolean | GlobalTool | MCPBuiltInGlobalToolOverride | undefined
158
197
  } & {
159
- [K in MCPGlobalBuiltinName]?: false | MCPBuiltInToolOverride
198
+ [K in MCPGlobalBuiltinName]?: false | MCPBuiltInGlobalToolOverride
160
199
  }
161
200
 
162
201
  export type MCPTopLevelToolsMap = Record<string, Tool>
@@ -168,6 +207,12 @@ export type PromptHandlerArgs<TSchema = undefined> = {
168
207
  }
169
208
 
170
209
  export type Prompt<TSchema extends ToolInputSchema = ToolInputSchema> = {
210
+ /**
211
+ * Runs while authorizing each MCP request, before the prompt is advertised or used. Return
212
+ * `false` to make the prompt unavailable for that request. This is skipped when
213
+ * `overrideAccess` is enabled.
214
+ */
215
+ access?: (args: MCPAccessArgs) => MaybePromise<boolean>
171
216
  argsSchema: TSchema
172
217
  description: string
173
218
  handler: (args: PromptHandlerArgs<TSchema>) => MaybePromise<{
@@ -185,6 +230,12 @@ export type ResourceHandlerArgs = {
185
230
  }
186
231
 
187
232
  export type Resource = {
233
+ /**
234
+ * Runs while authorizing each MCP request, before the resource is advertised or read. Return
235
+ * `false` to make the resource unavailable for that request. This is skipped when
236
+ * `overrideAccess` is enabled.
237
+ */
238
+ access?: (args: MCPAccessArgs) => MaybePromise<boolean>
188
239
  description: string
189
240
  handler: (args: ResourceHandlerArgs) => MaybePromise<{
190
241
  contents: Array<{ text: string; uri: string }>
@@ -218,34 +269,39 @@ export type MCPPluginConfig = {
218
269
  collections?: {
219
270
  [Slug in CollectionSlug]?: MCPPluginCollectionConfig<Slug>
220
271
  }
221
- /** Skip MCP registration. The API key collection is still added (so DB / types stay stable). */
272
+ /** Skip MCP endpoint registration. */
222
273
  disabled?: boolean
223
274
  globals?: {
224
275
  [Slug in GlobalSlug]?: MCPPluginGlobalConfig
225
276
  }
277
+ hooks?: {
278
+ /** Transform a tool response after its handler returns */
279
+ afterToolCall?: MCPAfterToolCallHook[]
280
+ }
226
281
  mcp?: {
227
282
  serverOptions?: MCPServerOptions
228
283
  verboseLogs?: boolean
229
284
  }
230
- overrideApiKeyCollection?: (collection: CollectionConfig) => CollectionConfig
231
- /** Replace the default API-key auth with a custom resolver. */
232
- overrideAuth?: (args: {
233
- getAPIKeyDoc: (overrideApiKey?: string) => Promise<MCPAPIKeysDoc>
234
- getAuthorizedMCP: (args: { apiKeyDoc: MCPAPIKeysDoc }) => AuthorizedMCP
235
- pluginConfig: SanitizedMCPPluginConfig
236
- req: PayloadRequest
237
- }) => MaybePromise<AuthorizedMCP>
285
+ /**
286
+ * Replace the default MCP authorization resolver.
287
+ *
288
+ * This hook replaces the default authentication flow. It must set `req.user` to the
289
+ * authenticated Payload user, or to `null` for an anonymous caller, before returning.
290
+ */
291
+ overrideGetAuthorizedMCP?: (
292
+ args: {
293
+ pluginConfig: SanitizedMCPPluginConfig
294
+ } & GetAuthorizedMCPArgs,
295
+ ) => MaybePromise<AuthorizedMCP>
238
296
  prompts?: Record<string, Prompt>
239
297
  resources?: Record<string, Resource>
240
298
  /** Cross-cutting tools (not scoped to any collection or global). */
241
299
  tools?: MCPTopLevelToolsMap
242
- userCollection?: CollectionSlug
243
300
  }
244
301
 
245
302
  export type SanitizedMCPPluginConfig = {
246
303
  items: MCPItem[]
247
- userCollection: CollectionSlug
248
- } & Pick<MCPPluginConfig, 'disabled' | 'mcp' | 'overrideApiKeyCollection' | 'overrideAuth'>
304
+ } & Pick<MCPPluginConfig, 'disabled' | 'hooks' | 'mcp' | 'overrideGetAuthorizedMCP'>
249
305
 
250
306
  export type MCPServerOptions = {
251
307
  options?: ConstructorParameters<typeof McpServer>[1]
@@ -253,52 +309,12 @@ export type MCPServerOptions = {
253
309
  }
254
310
 
255
311
  /**
256
- * Nested access tree as stored in the collection.
257
- * A `false` leaf disables that tool; missing keys defer to
258
- * defaults (built-in CRUD is on, opt-in tools are off).
259
- */
260
- export type MCPAPIKeysDocAccessTree = {
261
- collections?: {
262
- [CollectionSlug: CollectionSlug]: {
263
- [ToolKey: string]: boolean
264
- }
265
- }
266
- globals?: {
267
- [GlobalSlug: GlobalSlug]: {
268
- [ToolKey: string]: boolean
269
- }
270
- }
271
- prompts?: {
272
- [PromptKey: string]: boolean
273
- }
274
- resources?: {
275
- [ResourceKey: string]: boolean
276
- }
277
- tools?: {
278
- [ToolKey: string]: boolean
279
- }
280
- }
281
-
282
- /**
283
- * Stored on `payload-mcp-api-keys` docs
284
- */
285
- export type MCPAPIKeysDoc = {
286
- access: MCPAPIKeysDocAccessTree
287
- apiKey?: string
288
- apiKeyIndex?: string
289
- id: DefaultDocumentIDType
290
- lastUsed?: string
291
- overrideAccess?: boolean
292
- user: null | TypedUser
293
- }
294
-
295
- /**
296
- * One MCP primitive plus the metadata needed for access checks, admin UI, and
312
+ * One MCP primitive plus the metadata needed for config-driven filtering and
297
313
  * registration.
298
314
  *
299
- * - `configKey`: the config/API-key identifier, e.g. `find` or `echo`.
315
+ * - `configKey`: the config identifier, e.g. `find` or `echo`.
300
316
  * - `mcpName`: the MCP wire name, e.g. `findDocuments` or `echo`.
301
- * - `label`: human-readable admin checkbox text.
317
+ * - `label`: human-readable display text.
302
318
  */
303
319
  export type MCPItemBase = {
304
320
  configKey: string
@@ -335,13 +351,10 @@ export type MCPItem =
335
351
  | GlobalMCPItem
336
352
 
337
353
  /**
338
- * The caller's identity + the MCP items they can use for this request. Returned
339
- * by `getAuthorizedMCP`; denied items are simply absent from `items`. Handlers
340
- * receive this via `args.authorizedMCP` so they can spread
341
- * `localAPIDefaults(authorizedMCP)` into every local API call.
354
+ * The MCP items and access mode authorized for this request. The authenticated user is available
355
+ * as `req.user`.
342
356
  */
343
357
  export type AuthorizedMCP = {
344
358
  items: MCPItem[]
345
359
  overrideAccess: boolean
346
- user: null | TypedUser
347
360
  }
@@ -5,7 +5,7 @@ import type { SanitizedMCPPluginConfig } from '../types.js'
5
5
  /**
6
6
  * Returns the sanitized plugin config — the form produced by
7
7
  * `sanitizeMCPConfig` and stashed back on the plugin's `options` during init.
8
- * Callers downstream of plugin init can rely on `items`, `userCollection`, etc.
8
+ * Callers downstream of plugin init can rely on `items` and other defaults
9
9
  * being fully resolved.
10
10
  */
11
11
  export const getPluginConfig: (args: { config: SanitizedConfig }) => SanitizedMCPPluginConfig = ({
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=assets.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/@types/assets.d.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- import type { JSONField } from 'payload';
2
- import type { SanitizedMCPPluginConfig } from '../types.js';
3
- /**
4
- * Returns the API key collection's `access` field — a JSON field whose value
5
- * is the `MCPAPIKeysDocAccessTree` the endpoint consults. The actual UI is
6
- * a custom client component (`AccessField`) which renders a permissions
7
- * matrix; the field's stored shape is just the runtime access tree.
8
- */
9
- export declare const getAccessField: ({ pluginConfig, }: {
10
- pluginConfig: SanitizedMCPPluginConfig;
11
- }) => JSONField;
12
- //# sourceMappingURL=getAccessField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getAccessField.d.ts","sourceRoot":"","sources":["../../src/collection/getAccessField.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAExC,OAAO,KAAK,EAAkC,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAQ3F;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,mBAE5B;IACD,YAAY,EAAE,wBAAwB,CAAA;CACvC,KAAG,SAiBH,CAAA"}
@@ -1,72 +0,0 @@
1
- import { COLLECTION_AUTH_BUILTINS, COLLECTION_BUILTINS, GLOBAL_BUILTINS } from '../mcp/builtinTools.js';
2
- /**
3
- * Returns the API key collection's `access` field — a JSON field whose value
4
- * is the `MCPAPIKeysDocAccessTree` the endpoint consults. The actual UI is
5
- * a custom client component (`AccessField`) which renders a permissions
6
- * matrix; the field's stored shape is just the runtime access tree.
7
- */ export const getAccessField = ({ pluginConfig })=>{
8
- const clientPluginConfig = sanitizeClientPluginConfig(pluginConfig);
9
- return {
10
- name: 'access',
11
- type: 'json',
12
- admin: {
13
- components: {
14
- Field: {
15
- clientProps: {
16
- pluginConfig: clientPluginConfig
17
- },
18
- path: '@payloadcms/plugin-mcp/client#AccessField'
19
- }
20
- }
21
- },
22
- defaultValue: {},
23
- label: false
24
- };
25
- };
26
- /**
27
- * Strips the non-serializable parts of `SanitizedMCPPluginConfig` (handlers,
28
- * input/argsSchema functions, etc.) so the result is safe to thread to a
29
- * client component via `clientProps`.
30
- */ const sanitizeClientPluginConfig = (pluginConfig)=>({
31
- items: pluginConfig.items.map((item)=>{
32
- const group = itemGroup(item);
33
- return {
34
- ...item.type === 'collectionTool' ? {
35
- collectionSlug: item.collectionSlug
36
- } : {},
37
- ...item.type === 'globalTool' ? {
38
- globalSlug: item.globalSlug
39
- } : {},
40
- type: item.type,
41
- configKey: item.configKey,
42
- ...group === 'operations' ? {} : {
43
- description: itemDescription(item)
44
- },
45
- group,
46
- label: item.label
47
- };
48
- })
49
- });
50
- const itemDescription = (item)=>{
51
- if (item.type === 'prompt') {
52
- return item.prompt.description;
53
- }
54
- if (item.type === 'resource') {
55
- return item.resource.description;
56
- }
57
- return item.tool.description;
58
- };
59
- const itemGroup = (item)=>{
60
- if (item.type === 'collectionTool') {
61
- if (item.configKey in COLLECTION_BUILTINS) {
62
- return 'operations';
63
- }
64
- return item.configKey in COLLECTION_AUTH_BUILTINS ? 'auth' : 'custom';
65
- }
66
- if (item.type === 'globalTool') {
67
- return item.configKey in GLOBAL_BUILTINS ? 'operations' : 'custom';
68
- }
69
- return undefined;
70
- };
71
-
72
- //# sourceMappingURL=getAccessField.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/collection/getAccessField.ts"],"sourcesContent":["import type { JSONField } from 'payload'\n\nimport type { ClientMCPPluginConfig, MCPItem, SanitizedMCPPluginConfig } from '../types.js'\n\nimport {\n COLLECTION_AUTH_BUILTINS,\n COLLECTION_BUILTINS,\n GLOBAL_BUILTINS,\n} from '../mcp/builtinTools.js'\n\n/**\n * Returns the API key collection's `access` field — a JSON field whose value\n * is the `MCPAPIKeysDocAccessTree` the endpoint consults. The actual UI is\n * a custom client component (`AccessField`) which renders a permissions\n * matrix; the field's stored shape is just the runtime access tree.\n */\nexport const getAccessField = ({\n pluginConfig,\n}: {\n pluginConfig: SanitizedMCPPluginConfig\n}): JSONField => {\n const clientPluginConfig = sanitizeClientPluginConfig(pluginConfig)\n\n return {\n name: 'access',\n type: 'json',\n admin: {\n components: {\n Field: {\n clientProps: { pluginConfig: clientPluginConfig },\n path: '@payloadcms/plugin-mcp/client#AccessField',\n },\n },\n },\n defaultValue: {},\n label: false,\n }\n}\n\n/**\n * Strips the non-serializable parts of `SanitizedMCPPluginConfig` (handlers,\n * input/argsSchema functions, etc.) so the result is safe to thread to a\n * client component via `clientProps`.\n */\nconst sanitizeClientPluginConfig = (\n pluginConfig: SanitizedMCPPluginConfig,\n): ClientMCPPluginConfig => ({\n items: pluginConfig.items.map((item) => {\n const group = itemGroup(item)\n\n return {\n ...(item.type === 'collectionTool' ? { collectionSlug: item.collectionSlug } : {}),\n ...(item.type === 'globalTool' ? { globalSlug: item.globalSlug } : {}),\n type: item.type,\n configKey: item.configKey,\n ...(group === 'operations' ? {} : { description: itemDescription(item) }),\n group,\n label: item.label,\n }\n }),\n})\n\nconst itemDescription = (item: MCPItem): string => {\n if (item.type === 'prompt') {\n return item.prompt.description\n }\n if (item.type === 'resource') {\n return item.resource.description\n }\n return item.tool.description\n}\n\nconst itemGroup = (item: MCPItem): 'auth' | 'custom' | 'operations' | undefined => {\n if (item.type === 'collectionTool') {\n if (item.configKey in COLLECTION_BUILTINS) {\n return 'operations'\n }\n return item.configKey in COLLECTION_AUTH_BUILTINS ? 'auth' : 'custom'\n }\n if (item.type === 'globalTool') {\n return item.configKey in GLOBAL_BUILTINS ? 'operations' : 'custom'\n }\n return undefined\n}\n"],"names":["COLLECTION_AUTH_BUILTINS","COLLECTION_BUILTINS","GLOBAL_BUILTINS","getAccessField","pluginConfig","clientPluginConfig","sanitizeClientPluginConfig","name","type","admin","components","Field","clientProps","path","defaultValue","label","items","map","item","group","itemGroup","collectionSlug","globalSlug","configKey","description","itemDescription","prompt","resource","tool","undefined"],"mappings":"AAIA,SACEA,wBAAwB,EACxBC,mBAAmB,EACnBC,eAAe,QACV,yBAAwB;AAE/B;;;;;CAKC,GACD,OAAO,MAAMC,iBAAiB,CAAC,EAC7BC,YAAY,EAGb;IACC,MAAMC,qBAAqBC,2BAA2BF;IAEtD,OAAO;QACLG,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO;oBACLC,aAAa;wBAAER,cAAcC;oBAAmB;oBAChDQ,MAAM;gBACR;YACF;QACF;QACAC,cAAc,CAAC;QACfC,OAAO;IACT;AACF,EAAC;AAED;;;;CAIC,GACD,MAAMT,6BAA6B,CACjCF,eAC2B,CAAA;QAC3BY,OAAOZ,aAAaY,KAAK,CAACC,GAAG,CAAC,CAACC;YAC7B,MAAMC,QAAQC,UAAUF;YAExB,OAAO;gBACL,GAAIA,KAAKV,IAAI,KAAK,mBAAmB;oBAAEa,gBAAgBH,KAAKG,cAAc;gBAAC,IAAI,CAAC,CAAC;gBACjF,GAAIH,KAAKV,IAAI,KAAK,eAAe;oBAAEc,YAAYJ,KAAKI,UAAU;gBAAC,IAAI,CAAC,CAAC;gBACrEd,MAAMU,KAAKV,IAAI;gBACfe,WAAWL,KAAKK,SAAS;gBACzB,GAAIJ,UAAU,eAAe,CAAC,IAAI;oBAAEK,aAAaC,gBAAgBP;gBAAM,CAAC;gBACxEC;gBACAJ,OAAOG,KAAKH,KAAK;YACnB;QACF;IACF,CAAA;AAEA,MAAMU,kBAAkB,CAACP;IACvB,IAAIA,KAAKV,IAAI,KAAK,UAAU;QAC1B,OAAOU,KAAKQ,MAAM,CAACF,WAAW;IAChC;IACA,IAAIN,KAAKV,IAAI,KAAK,YAAY;QAC5B,OAAOU,KAAKS,QAAQ,CAACH,WAAW;IAClC;IACA,OAAON,KAAKU,IAAI,CAACJ,WAAW;AAC9B;AAEA,MAAMJ,YAAY,CAACF;IACjB,IAAIA,KAAKV,IAAI,KAAK,kBAAkB;QAClC,IAAIU,KAAKK,SAAS,IAAItB,qBAAqB;YACzC,OAAO;QACT;QACA,OAAOiB,KAAKK,SAAS,IAAIvB,2BAA2B,SAAS;IAC/D;IACA,IAAIkB,KAAKV,IAAI,KAAK,cAAc;QAC9B,OAAOU,KAAKK,SAAS,IAAIrB,kBAAkB,eAAe;IAC5D;IACA,OAAO2B;AACT"}
@@ -1,6 +0,0 @@
1
- import type { CollectionConfig } from 'payload';
2
- import type { SanitizedMCPPluginConfig } from '../types.js';
3
- export declare const getAPIKeysCollection: ({ pluginConfig, }: {
4
- pluginConfig: SanitizedMCPPluginConfig;
5
- }) => CollectionConfig;
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/collection/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAI/C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAkB3D,eAAO,MAAM,oBAAoB,GAAI,mBAElC;IACD,YAAY,EAAE,wBAAwB,CAAA;CACvC,KAAG,gBA8EH,CAAA"}
@@ -1,105 +0,0 @@
1
- import { createAPIKeyFields } from 'payload';
2
- import { getAccessField } from './getAccessField.js';
3
- const apiKeyStorageFields = createAPIKeyFields({
4
- apiKeyField: {
5
- admin: {
6
- components: {
7
- Field: '@payloadcms/plugin-mcp/client#APIKeyField'
8
- }
9
- },
10
- required: true
11
- },
12
- apiKeyIndexField: {
13
- index: true,
14
- required: true
15
- },
16
- includeEnableAPIKey: false
17
- });
18
- export const getAPIKeysCollection = ({ pluginConfig })=>{
19
- const collection = {
20
- slug: 'payload-mcp-api-keys',
21
- admin: {
22
- components: {
23
- views: {
24
- list: {
25
- NoResults: '@payloadcms/plugin-mcp/client#APIKeysEmptyState'
26
- }
27
- }
28
- },
29
- defaultColumns: [
30
- 'label',
31
- 'lastUsed',
32
- 'user'
33
- ],
34
- // Kept out of the main nav — reachable through the user menu's settings instead.
35
- group: false,
36
- useAsTitle: 'label'
37
- },
38
- fields: [
39
- ...apiKeyStorageFields,
40
- getAccessField({
41
- pluginConfig
42
- }),
43
- {
44
- name: 'label',
45
- type: 'text',
46
- admin: {
47
- description: ({ t })=>t('plugin-mcp:titleDescription'),
48
- position: 'sidebar'
49
- },
50
- label: ({ t })=>t('plugin-mcp:title')
51
- },
52
- {
53
- name: 'description',
54
- type: 'text',
55
- admin: {
56
- description: ({ t })=>t('plugin-mcp:descriptionDescription'),
57
- position: 'sidebar'
58
- },
59
- label: ({ t })=>t('plugin-mcp:description')
60
- },
61
- {
62
- name: 'lastUsed',
63
- type: 'date',
64
- admin: {
65
- date: {
66
- pickerAppearance: 'dayAndTime'
67
- },
68
- disabled: {
69
- field: true
70
- }
71
- },
72
- label: ({ t })=>t('plugin-mcp:lastUsed')
73
- },
74
- {
75
- name: 'user',
76
- type: 'relationship',
77
- admin: {
78
- description: ({ t })=>t('plugin-mcp:userDescription'),
79
- position: 'sidebar'
80
- },
81
- label: ({ t })=>t('general:user'),
82
- relationTo: pluginConfig.userCollection,
83
- required: true
84
- },
85
- {
86
- name: 'overrideAccess',
87
- type: 'checkbox',
88
- admin: {
89
- description: ({ t })=>t('plugin-mcp:overrideAccessDescription'),
90
- position: 'sidebar'
91
- },
92
- defaultValue: false,
93
- label: ({ t })=>t('plugin-mcp:overrideAccess')
94
- }
95
- ],
96
- labels: {
97
- plural: ({ t })=>`${t('plugin-mcp:mcp')} ${t('plugin-mcp:apiKeys')}`,
98
- singular: ({ t })=>`${t('plugin-mcp:mcp')} ${t('authentication:apiKey')}`
99
- },
100
- versions: false
101
- };
102
- return pluginConfig.overrideApiKeyCollection ? pluginConfig.overrideApiKeyCollection(collection) : collection;
103
- };
104
-
105
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/collection/index.ts"],"sourcesContent":["import type { CollectionConfig } from 'payload'\n\nimport { createAPIKeyFields } from 'payload'\n\nimport type { SanitizedMCPPluginConfig } from '../types.js'\n\nimport { getAccessField } from './getAccessField.js'\n\nconst apiKeyStorageFields = createAPIKeyFields({\n apiKeyField: {\n admin: {\n components: { Field: '@payloadcms/plugin-mcp/client#APIKeyField' },\n },\n required: true,\n },\n apiKeyIndexField: {\n index: true,\n required: true,\n },\n includeEnableAPIKey: false,\n})\n\nexport const getAPIKeysCollection = ({\n pluginConfig,\n}: {\n pluginConfig: SanitizedMCPPluginConfig\n}): CollectionConfig => {\n const collection: CollectionConfig = {\n slug: 'payload-mcp-api-keys',\n admin: {\n components: {\n views: {\n list: {\n NoResults: '@payloadcms/plugin-mcp/client#APIKeysEmptyState',\n },\n },\n },\n defaultColumns: ['label', 'lastUsed', 'user'],\n // Kept out of the main nav — reachable through the user menu's settings instead.\n group: false,\n useAsTitle: 'label',\n },\n fields: [\n ...apiKeyStorageFields,\n getAccessField({ pluginConfig }),\n {\n name: 'label',\n type: 'text',\n admin: {\n description: ({ t }) => t('plugin-mcp:titleDescription'),\n position: 'sidebar',\n },\n label: ({ t }) => t('plugin-mcp:title'),\n },\n {\n name: 'description',\n type: 'text',\n admin: {\n description: ({ t }) => t('plugin-mcp:descriptionDescription'),\n position: 'sidebar',\n },\n label: ({ t }) => t('plugin-mcp:description'),\n },\n {\n name: 'lastUsed',\n type: 'date',\n admin: {\n date: { pickerAppearance: 'dayAndTime' },\n disabled: { field: true },\n },\n label: ({ t }) => t('plugin-mcp:lastUsed'),\n },\n {\n name: 'user',\n type: 'relationship',\n admin: {\n description: ({ t }) => t('plugin-mcp:userDescription'),\n position: 'sidebar',\n },\n label: ({ t }) => t('general:user'),\n relationTo: pluginConfig.userCollection,\n required: true,\n },\n {\n name: 'overrideAccess',\n type: 'checkbox',\n admin: {\n description: ({ t }) => t('plugin-mcp:overrideAccessDescription'),\n position: 'sidebar',\n },\n defaultValue: false,\n label: ({ t }) => t('plugin-mcp:overrideAccess'),\n },\n ],\n labels: {\n plural: ({ t }) => `${t('plugin-mcp:mcp')} ${t('plugin-mcp:apiKeys')}`,\n singular: ({ t }) => `${t('plugin-mcp:mcp')} ${t('authentication:apiKey')}`,\n },\n versions: false,\n }\n\n return pluginConfig.overrideApiKeyCollection\n ? pluginConfig.overrideApiKeyCollection(collection)\n : collection\n}\n"],"names":["createAPIKeyFields","getAccessField","apiKeyStorageFields","apiKeyField","admin","components","Field","required","apiKeyIndexField","index","includeEnableAPIKey","getAPIKeysCollection","pluginConfig","collection","slug","views","list","NoResults","defaultColumns","group","useAsTitle","fields","name","type","description","t","position","label","date","pickerAppearance","disabled","field","relationTo","userCollection","defaultValue","labels","plural","singular","versions","overrideApiKeyCollection"],"mappings":"AAEA,SAASA,kBAAkB,QAAQ,UAAS;AAI5C,SAASC,cAAc,QAAQ,sBAAqB;AAEpD,MAAMC,sBAAsBF,mBAAmB;IAC7CG,aAAa;QACXC,OAAO;YACLC,YAAY;gBAAEC,OAAO;YAA4C;QACnE;QACAC,UAAU;IACZ;IACAC,kBAAkB;QAChBC,OAAO;QACPF,UAAU;IACZ;IACAG,qBAAqB;AACvB;AAEA,OAAO,MAAMC,uBAAuB,CAAC,EACnCC,YAAY,EAGb;IACC,MAAMC,aAA+B;QACnCC,MAAM;QACNV,OAAO;YACLC,YAAY;gBACVU,OAAO;oBACLC,MAAM;wBACJC,WAAW;oBACb;gBACF;YACF;YACAC,gBAAgB;gBAAC;gBAAS;gBAAY;aAAO;YAC7C,iFAAiF;YACjFC,OAAO;YACPC,YAAY;QACd;QACAC,QAAQ;eACHnB;YACHD,eAAe;gBAAEW;YAAa;YAC9B;gBACEU,MAAM;gBACNC,MAAM;gBACNnB,OAAO;oBACLoB,aAAa,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;oBAC1BC,UAAU;gBACZ;gBACAC,OAAO,CAAC,EAAEF,CAAC,EAAE,GAAKA,EAAE;YACtB;YACA;gBACEH,MAAM;gBACNC,MAAM;gBACNnB,OAAO;oBACLoB,aAAa,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;oBAC1BC,UAAU;gBACZ;gBACAC,OAAO,CAAC,EAAEF,CAAC,EAAE,GAAKA,EAAE;YACtB;YACA;gBACEH,MAAM;gBACNC,MAAM;gBACNnB,OAAO;oBACLwB,MAAM;wBAAEC,kBAAkB;oBAAa;oBACvCC,UAAU;wBAAEC,OAAO;oBAAK;gBAC1B;gBACAJ,OAAO,CAAC,EAAEF,CAAC,EAAE,GAAKA,EAAE;YACtB;YACA;gBACEH,MAAM;gBACNC,MAAM;gBACNnB,OAAO;oBACLoB,aAAa,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;oBAC1BC,UAAU;gBACZ;gBACAC,OAAO,CAAC,EAAEF,CAAC,EAAE,GAAKA,EAAE;gBACpBO,YAAYpB,aAAaqB,cAAc;gBACvC1B,UAAU;YACZ;YACA;gBACEe,MAAM;gBACNC,MAAM;gBACNnB,OAAO;oBACLoB,aAAa,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;oBAC1BC,UAAU;gBACZ;gBACAQ,cAAc;gBACdP,OAAO,CAAC,EAAEF,CAAC,EAAE,GAAKA,EAAE;YACtB;SACD;QACDU,QAAQ;YACNC,QAAQ,CAAC,EAAEX,CAAC,EAAE,GAAK,GAAGA,EAAE,kBAAkB,CAAC,EAAEA,EAAE,uBAAuB;YACtEY,UAAU,CAAC,EAAEZ,CAAC,EAAE,GAAK,GAAGA,EAAE,kBAAkB,CAAC,EAAEA,EAAE,0BAA0B;QAC7E;QACAa,UAAU;IACZ;IAEA,OAAO1B,aAAa2B,wBAAwB,GACxC3B,aAAa2B,wBAAwB,CAAC1B,cACtCA;AACN,EAAC"}
@@ -1,9 +0,0 @@
1
- import React from 'react';
2
- import './index.css';
3
- /**
4
- * Custom component for the MCP API-keys collection's `apiKey` field:
5
- * - no key yet: a "Generate new key" button
6
- * - key set: a dismissible privacy warning + the shared masked-key input
7
- */
8
- export declare const APIKeyField: React.FC;
9
- //# sourceMappingURL=index.client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/components/APIKeyField/index.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,aAAa,CAAA;AAIpB;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAqD/B,CAAA"}