mcp-creatio 0.4.1 → 0.6.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 (310) hide show
  1. package/README.md +265 -212
  2. package/dist/cli.js +3 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config-builder.d.ts.map +1 -1
  5. package/dist/config-builder.js +13 -1
  6. package/dist/config-builder.js.map +1 -1
  7. package/dist/creatio/auth/auth.d.ts +16 -2
  8. package/dist/creatio/auth/auth.d.ts.map +1 -1
  9. package/dist/creatio/auth/auth.js +9 -0
  10. package/dist/creatio/auth/auth.js.map +1 -1
  11. package/dist/creatio/auth/index.d.ts +2 -1
  12. package/dist/creatio/auth/index.d.ts.map +1 -1
  13. package/dist/creatio/auth/index.js +4 -1
  14. package/dist/creatio/auth/index.js.map +1 -1
  15. package/dist/creatio/auth/providers/base-provider.d.ts +2 -5
  16. package/dist/creatio/auth/providers/base-provider.d.ts.map +1 -1
  17. package/dist/creatio/auth/providers/base-provider.js +0 -15
  18. package/dist/creatio/auth/providers/base-provider.js.map +1 -1
  19. package/dist/creatio/auth/providers/oauth2-code-provider.js +3 -3
  20. package/dist/creatio/client-config.d.ts +8 -0
  21. package/dist/creatio/client-config.d.ts.map +1 -1
  22. package/dist/creatio/{providers → contracts}/admin-operation-provider.d.ts.map +1 -1
  23. package/dist/creatio/contracts/admin-operation-provider.js.map +1 -0
  24. package/dist/creatio/{providers → contracts}/configuration-provider.d.ts +3 -2
  25. package/dist/creatio/contracts/configuration-provider.d.ts.map +1 -0
  26. package/dist/creatio/contracts/configuration-provider.js.map +1 -0
  27. package/dist/creatio/contracts/crud-provider.d.ts +52 -0
  28. package/dist/creatio/contracts/crud-provider.d.ts.map +1 -0
  29. package/dist/creatio/contracts/crud-provider.js.map +1 -0
  30. package/dist/creatio/{providers → contracts}/feature-provider.d.ts.map +1 -1
  31. package/dist/creatio/contracts/feature-provider.js.map +1 -0
  32. package/dist/creatio/{providers → contracts}/index.d.ts +1 -0
  33. package/dist/creatio/contracts/index.d.ts.map +1 -0
  34. package/dist/creatio/{providers → contracts}/index.js +1 -0
  35. package/dist/creatio/{providers → contracts}/index.js.map +1 -1
  36. package/dist/creatio/{providers → contracts}/process-provider.d.ts.map +1 -1
  37. package/dist/creatio/contracts/process-provider.js.map +1 -0
  38. package/dist/creatio/contracts/query.d.ts +69 -0
  39. package/dist/creatio/contracts/query.d.ts.map +1 -0
  40. package/dist/creatio/contracts/query.js +10 -0
  41. package/dist/creatio/contracts/query.js.map +1 -0
  42. package/dist/creatio/{providers → contracts}/sys-settings-provider.d.ts.map +1 -1
  43. package/dist/creatio/contracts/sys-settings-provider.js.map +1 -0
  44. package/dist/creatio/{providers → contracts}/user-provider.d.ts.map +1 -1
  45. package/dist/creatio/contracts/user-provider.js.map +1 -0
  46. package/dist/creatio/engines/{admin-operation/admin-operation-engine.d.ts → admin-operation-engine.d.ts} +4 -4
  47. package/dist/creatio/engines/admin-operation-engine.d.ts.map +1 -0
  48. package/dist/creatio/engines/admin-operation-engine.js +29 -0
  49. package/dist/creatio/engines/admin-operation-engine.js.map +1 -0
  50. package/dist/creatio/engines/configuration-engine.d.ts +10 -0
  51. package/dist/creatio/engines/configuration-engine.d.ts.map +1 -0
  52. package/dist/creatio/engines/configuration-engine.js +23 -0
  53. package/dist/creatio/engines/configuration-engine.js.map +1 -0
  54. package/dist/creatio/engines/crud-engine.d.ts +17 -0
  55. package/dist/creatio/engines/crud-engine.d.ts.map +1 -0
  56. package/dist/creatio/engines/crud-engine.js +39 -0
  57. package/dist/creatio/engines/crud-engine.js.map +1 -0
  58. package/dist/creatio/engines/engine-manager.d.ts +15 -8
  59. package/dist/creatio/engines/engine-manager.d.ts.map +1 -1
  60. package/dist/creatio/engines/engine-manager.js +26 -14
  61. package/dist/creatio/engines/engine-manager.js.map +1 -1
  62. package/dist/creatio/engines/engine.d.ts +36 -0
  63. package/dist/creatio/engines/engine.d.ts.map +1 -1
  64. package/dist/creatio/engines/engine.js +43 -0
  65. package/dist/creatio/engines/engine.js.map +1 -1
  66. package/dist/creatio/engines/feature-engine.d.ts +10 -0
  67. package/dist/creatio/engines/feature-engine.d.ts.map +1 -0
  68. package/dist/creatio/engines/{feature/feature-engine.js → feature-engine.js} +5 -3
  69. package/dist/creatio/engines/feature-engine.js.map +1 -0
  70. package/dist/creatio/engines/index.d.ts +7 -7
  71. package/dist/creatio/engines/index.d.ts.map +1 -1
  72. package/dist/creatio/engines/index.js +7 -7
  73. package/dist/creatio/engines/index.js.map +1 -1
  74. package/dist/creatio/engines/process-engine.d.ts +10 -0
  75. package/dist/creatio/engines/process-engine.d.ts.map +1 -0
  76. package/dist/creatio/engines/{process/process-engine.js → process-engine.js} +5 -3
  77. package/dist/creatio/engines/process-engine.js.map +1 -0
  78. package/dist/creatio/engines/{sys-settings/sys-settings-engine.d.ts → sys-settings-engine.d.ts} +4 -4
  79. package/dist/creatio/engines/sys-settings-engine.d.ts.map +1 -0
  80. package/dist/creatio/engines/sys-settings-engine.js +29 -0
  81. package/dist/creatio/engines/sys-settings-engine.js.map +1 -0
  82. package/dist/creatio/engines/user-engine.d.ts +10 -0
  83. package/dist/creatio/engines/user-engine.d.ts.map +1 -0
  84. package/dist/creatio/engines/{user/user-engine.js → user-engine.js} +4 -2
  85. package/dist/creatio/engines/user-engine.js.map +1 -0
  86. package/dist/creatio/index.d.ts +1 -1
  87. package/dist/creatio/index.js +1 -1
  88. package/dist/creatio/provider-context.d.ts +1 -1
  89. package/dist/creatio/services/admin-operation-service-provider.d.ts +1 -1
  90. package/dist/creatio/services/admin-operation-service-provider.d.ts.map +1 -1
  91. package/dist/creatio/services/admin-operation-service-provider.js +2 -2
  92. package/dist/creatio/services/admin-operation-service-provider.js.map +1 -1
  93. package/dist/creatio/services/configuration-service-provider.d.ts +1 -1
  94. package/dist/creatio/services/configuration-service-provider.d.ts.map +1 -1
  95. package/dist/creatio/services/configuration-service-provider.js +16 -5
  96. package/dist/creatio/services/configuration-service-provider.js.map +1 -1
  97. package/dist/creatio/services/creatio-service-context.d.ts +1 -1
  98. package/dist/creatio/services/creatio-service-context.d.ts.map +1 -1
  99. package/dist/creatio/services/creatio-service-context.js +6 -3
  100. package/dist/creatio/services/creatio-service-context.js.map +1 -1
  101. package/dist/creatio/services/crud-provider-factory.d.ts +16 -0
  102. package/dist/creatio/services/crud-provider-factory.d.ts.map +1 -0
  103. package/dist/creatio/services/crud-provider-factory.js +22 -0
  104. package/dist/creatio/services/crud-provider-factory.js.map +1 -0
  105. package/dist/creatio/services/dataservice/data-service-column-values.d.ts +12 -0
  106. package/dist/creatio/services/dataservice/data-service-column-values.d.ts.map +1 -0
  107. package/dist/creatio/services/dataservice/data-service-column-values.js +39 -0
  108. package/dist/creatio/services/dataservice/data-service-column-values.js.map +1 -0
  109. package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts +49 -0
  110. package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts.map +1 -0
  111. package/dist/creatio/services/dataservice/data-service-crud-provider.js +157 -0
  112. package/dist/creatio/services/dataservice/data-service-crud-provider.js.map +1 -0
  113. package/dist/creatio/services/dataservice/data-service-filter-translator.d.ts +32 -0
  114. package/dist/creatio/services/dataservice/data-service-filter-translator.d.ts.map +1 -0
  115. package/dist/creatio/services/dataservice/data-service-filter-translator.js +114 -0
  116. package/dist/creatio/services/dataservice/data-service-filter-translator.js.map +1 -0
  117. package/dist/creatio/services/dataservice/data-service-query-builder.d.ts +21 -0
  118. package/dist/creatio/services/dataservice/data-service-query-builder.d.ts.map +1 -0
  119. package/dist/creatio/services/dataservice/data-service-query-builder.js +97 -0
  120. package/dist/creatio/services/dataservice/data-service-query-builder.js.map +1 -0
  121. package/dist/creatio/services/dataservice/data-service-schema.d.ts +31 -0
  122. package/dist/creatio/services/dataservice/data-service-schema.d.ts.map +1 -0
  123. package/dist/creatio/services/dataservice/data-service-schema.js +95 -0
  124. package/dist/creatio/services/dataservice/data-service-schema.js.map +1 -0
  125. package/dist/creatio/services/dataservice/data-service-transport.d.ts +21 -0
  126. package/dist/creatio/services/dataservice/data-service-transport.d.ts.map +1 -0
  127. package/dist/creatio/services/dataservice/data-service-transport.js +49 -0
  128. package/dist/creatio/services/dataservice/data-service-transport.js.map +1 -0
  129. package/dist/creatio/services/dataservice/data-service-types.d.ts +180 -0
  130. package/dist/creatio/services/dataservice/data-service-types.d.ts.map +1 -0
  131. package/dist/creatio/services/dataservice/data-service-types.js +110 -0
  132. package/dist/creatio/services/dataservice/data-service-types.js.map +1 -0
  133. package/dist/creatio/services/dataservice/data-service-value-type.d.ts +27 -0
  134. package/dist/creatio/services/dataservice/data-service-value-type.d.ts.map +1 -0
  135. package/dist/creatio/services/dataservice/data-service-value-type.js +99 -0
  136. package/dist/creatio/services/dataservice/data-service-value-type.js.map +1 -0
  137. package/dist/creatio/services/entity-name.d.ts +8 -0
  138. package/dist/creatio/services/entity-name.d.ts.map +1 -0
  139. package/dist/creatio/services/entity-name.js +17 -0
  140. package/dist/creatio/services/entity-name.js.map +1 -0
  141. package/dist/creatio/services/feature-service-provider.d.ts +1 -1
  142. package/dist/creatio/services/feature-service-provider.d.ts.map +1 -1
  143. package/dist/creatio/services/feature-service-provider.js +5 -5
  144. package/dist/creatio/services/feature-service-provider.js.map +1 -1
  145. package/dist/creatio/services/http-client.d.ts +10 -1
  146. package/dist/creatio/services/http-client.d.ts.map +1 -1
  147. package/dist/creatio/services/http-client.js +15 -3
  148. package/dist/creatio/services/http-client.js.map +1 -1
  149. package/dist/creatio/services/index.d.ts +14 -2
  150. package/dist/creatio/services/index.d.ts.map +1 -1
  151. package/dist/creatio/services/index.js +14 -2
  152. package/dist/creatio/services/index.js.map +1 -1
  153. package/dist/creatio/services/lookup-path.d.ts +18 -0
  154. package/dist/creatio/services/lookup-path.d.ts.map +1 -0
  155. package/dist/creatio/services/lookup-path.js +33 -0
  156. package/dist/creatio/services/lookup-path.js.map +1 -0
  157. package/dist/creatio/services/{metadata-store.d.ts → odata/metadata-store.d.ts} +2 -2
  158. package/dist/creatio/services/odata/metadata-store.d.ts.map +1 -0
  159. package/dist/creatio/services/{metadata-store.js → odata/metadata-store.js} +5 -4
  160. package/dist/creatio/services/odata/metadata-store.js.map +1 -0
  161. package/dist/creatio/services/{odata-crud-provider.d.ts → odata/odata-crud-provider.d.ts} +7 -7
  162. package/dist/creatio/services/odata/odata-crud-provider.d.ts.map +1 -0
  163. package/dist/creatio/services/{odata-crud-provider.js → odata/odata-crud-provider.js} +35 -59
  164. package/dist/creatio/services/odata/odata-crud-provider.js.map +1 -0
  165. package/dist/creatio/services/odata/odata-query-translator.d.ts +37 -0
  166. package/dist/creatio/services/odata/odata-query-translator.d.ts.map +1 -0
  167. package/dist/creatio/services/odata/odata-query-translator.js +160 -0
  168. package/dist/creatio/services/odata/odata-query-translator.js.map +1 -0
  169. package/dist/creatio/services/odata/odata-routes.d.ts +4 -0
  170. package/dist/creatio/services/odata/odata-routes.d.ts.map +1 -0
  171. package/dist/creatio/services/odata/odata-routes.js +9 -0
  172. package/dist/creatio/services/odata/odata-routes.js.map +1 -0
  173. package/dist/creatio/services/process-service-provider.d.ts +1 -1
  174. package/dist/creatio/services/process-service-provider.d.ts.map +1 -1
  175. package/dist/creatio/services/process-service-provider.js +2 -5
  176. package/dist/creatio/services/process-service-provider.js.map +1 -1
  177. package/dist/creatio/services/sys-settings-service-provider.d.ts +1 -1
  178. package/dist/creatio/services/sys-settings-service-provider.d.ts.map +1 -1
  179. package/dist/creatio/services/sys-settings-service-provider.js +12 -16
  180. package/dist/creatio/services/sys-settings-service-provider.js.map +1 -1
  181. package/dist/creatio/services/user-info-provider.d.ts +1 -1
  182. package/dist/index.js +3 -2
  183. package/dist/index.js.map +1 -1
  184. package/dist/log.d.ts +5 -0
  185. package/dist/log.d.ts.map +1 -1
  186. package/dist/log.js +8 -0
  187. package/dist/log.js.map +1 -1
  188. package/dist/server/http/creatio-oauth-handlers.d.ts.map +1 -1
  189. package/dist/server/http/creatio-oauth-handlers.js +21 -5
  190. package/dist/server/http/creatio-oauth-handlers.js.map +1 -1
  191. package/dist/server/http/httpServer.d.ts.map +1 -1
  192. package/dist/server/http/httpServer.js +6 -4
  193. package/dist/server/http/httpServer.js.map +1 -1
  194. package/dist/server/http/mcp-handlers.js +2 -2
  195. package/dist/server/mcp/creatio-rest.d.ts +44 -0
  196. package/dist/server/mcp/creatio-rest.d.ts.map +1 -0
  197. package/dist/server/mcp/creatio-rest.js +26 -0
  198. package/dist/server/mcp/creatio-rest.js.map +1 -0
  199. package/dist/server/mcp/crtmcp/crt-mcp-client.d.ts +52 -0
  200. package/dist/server/mcp/crtmcp/crt-mcp-client.d.ts.map +1 -0
  201. package/dist/server/mcp/crtmcp/crt-mcp-client.js +67 -0
  202. package/dist/server/mcp/crtmcp/crt-mcp-client.js.map +1 -0
  203. package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.d.ts +20 -0
  204. package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.d.ts.map +1 -0
  205. package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.js +74 -0
  206. package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.js.map +1 -0
  207. package/dist/server/mcp/dataforge/dataforge-client.d.ts +64 -0
  208. package/dist/server/mcp/dataforge/dataforge-client.d.ts.map +1 -0
  209. package/dist/server/mcp/dataforge/dataforge-client.js +130 -0
  210. package/dist/server/mcp/dataforge/dataforge-client.js.map +1 -0
  211. package/dist/server/mcp/dataforge/dataforge-tool-preparer.d.ts +17 -0
  212. package/dist/server/mcp/dataforge/dataforge-tool-preparer.d.ts.map +1 -0
  213. package/dist/server/mcp/dataforge/dataforge-tool-preparer.js +42 -0
  214. package/dist/server/mcp/dataforge/dataforge-tool-preparer.js.map +1 -0
  215. package/dist/server/mcp/filters.d.ts +7 -1
  216. package/dist/server/mcp/filters.d.ts.map +1 -1
  217. package/dist/server/mcp/filters.js +48 -74
  218. package/dist/server/mcp/filters.js.map +1 -1
  219. package/dist/server/mcp/globalsearch/globalsearch-client.d.ts +50 -0
  220. package/dist/server/mcp/globalsearch/globalsearch-client.d.ts.map +1 -0
  221. package/dist/server/mcp/globalsearch/globalsearch-client.js +118 -0
  222. package/dist/server/mcp/globalsearch/globalsearch-client.js.map +1 -0
  223. package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.d.ts +16 -0
  224. package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.d.ts.map +1 -0
  225. package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.js +34 -0
  226. package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.js.map +1 -0
  227. package/dist/server/mcp/json-schema-to-zod.d.ts +3 -0
  228. package/dist/server/mcp/json-schema-to-zod.d.ts.map +1 -0
  229. package/dist/server/mcp/json-schema-to-zod.js +54 -0
  230. package/dist/server/mcp/json-schema-to-zod.js.map +1 -0
  231. package/dist/server/mcp/server.d.ts +33 -0
  232. package/dist/server/mcp/server.d.ts.map +1 -1
  233. package/dist/server/mcp/server.js +243 -163
  234. package/dist/server/mcp/server.js.map +1 -1
  235. package/dist/server/mcp/tool-preparer.d.ts +26 -0
  236. package/dist/server/mcp/tool-preparer.d.ts.map +1 -0
  237. package/dist/server/mcp/tool-preparer.js +11 -0
  238. package/dist/server/mcp/tool-preparer.js.map +1 -0
  239. package/dist/server/mcp/tools-data.d.ts +119 -7
  240. package/dist/server/mcp/tools-data.d.ts.map +1 -1
  241. package/dist/server/mcp/tools-data.js +258 -43
  242. package/dist/server/mcp/tools-data.js.map +1 -1
  243. package/dist/sessions/index.d.ts.map +1 -0
  244. package/dist/sessions/index.js.map +1 -0
  245. package/dist/{services → sessions}/session-context.d.ts +16 -0
  246. package/dist/sessions/session-context.d.ts.map +1 -0
  247. package/dist/{services → sessions}/session-context.js +36 -1
  248. package/dist/sessions/session-context.js.map +1 -0
  249. package/dist/{services → sessions}/token-refresh-scheduler.d.ts.map +1 -1
  250. package/dist/{services → sessions}/token-refresh-scheduler.js +2 -2
  251. package/dist/{services → sessions}/token-refresh-scheduler.js.map +1 -1
  252. package/dist/utils/context.js +2 -2
  253. package/package.json +8 -8
  254. package/dist/creatio/engines/admin-operation/admin-operation-engine.d.ts.map +0 -1
  255. package/dist/creatio/engines/admin-operation/admin-operation-engine.js +0 -27
  256. package/dist/creatio/engines/admin-operation/admin-operation-engine.js.map +0 -1
  257. package/dist/creatio/engines/configuration/configuration-engine.d.ts +0 -10
  258. package/dist/creatio/engines/configuration/configuration-engine.d.ts.map +0 -1
  259. package/dist/creatio/engines/configuration/configuration-engine.js +0 -18
  260. package/dist/creatio/engines/configuration/configuration-engine.js.map +0 -1
  261. package/dist/creatio/engines/crud/crud-engine.d.ts +0 -15
  262. package/dist/creatio/engines/crud/crud-engine.d.ts.map +0 -1
  263. package/dist/creatio/engines/crud/crud-engine.js +0 -33
  264. package/dist/creatio/engines/crud/crud-engine.js.map +0 -1
  265. package/dist/creatio/engines/feature/feature-engine.d.ts +0 -10
  266. package/dist/creatio/engines/feature/feature-engine.d.ts.map +0 -1
  267. package/dist/creatio/engines/feature/feature-engine.js.map +0 -1
  268. package/dist/creatio/engines/process/process-engine.d.ts +0 -10
  269. package/dist/creatio/engines/process/process-engine.d.ts.map +0 -1
  270. package/dist/creatio/engines/process/process-engine.js.map +0 -1
  271. package/dist/creatio/engines/sys-settings/sys-settings-engine.d.ts.map +0 -1
  272. package/dist/creatio/engines/sys-settings/sys-settings-engine.js +0 -27
  273. package/dist/creatio/engines/sys-settings/sys-settings-engine.js.map +0 -1
  274. package/dist/creatio/engines/user/user-engine.d.ts +0 -10
  275. package/dist/creatio/engines/user/user-engine.d.ts.map +0 -1
  276. package/dist/creatio/engines/user/user-engine.js.map +0 -1
  277. package/dist/creatio/providers/admin-operation-provider.js.map +0 -1
  278. package/dist/creatio/providers/configuration-provider.d.ts.map +0 -1
  279. package/dist/creatio/providers/configuration-provider.js.map +0 -1
  280. package/dist/creatio/providers/crud-provider.d.ts +0 -40
  281. package/dist/creatio/providers/crud-provider.d.ts.map +0 -1
  282. package/dist/creatio/providers/crud-provider.js.map +0 -1
  283. package/dist/creatio/providers/feature-provider.js.map +0 -1
  284. package/dist/creatio/providers/index.d.ts.map +0 -1
  285. package/dist/creatio/providers/process-provider.js.map +0 -1
  286. package/dist/creatio/providers/sys-settings-provider.js.map +0 -1
  287. package/dist/creatio/providers/user-provider.js.map +0 -1
  288. package/dist/creatio/services/metadata-store.d.ts.map +0 -1
  289. package/dist/creatio/services/metadata-store.js.map +0 -1
  290. package/dist/creatio/services/odata-crud-provider.d.ts.map +0 -1
  291. package/dist/creatio/services/odata-crud-provider.js.map +0 -1
  292. package/dist/services/index.d.ts.map +0 -1
  293. package/dist/services/index.js.map +0 -1
  294. package/dist/services/session-context.d.ts.map +0 -1
  295. package/dist/services/session-context.js.map +0 -1
  296. /package/dist/creatio/{providers → contracts}/admin-operation-provider.d.ts +0 -0
  297. /package/dist/creatio/{providers → contracts}/admin-operation-provider.js +0 -0
  298. /package/dist/creatio/{providers → contracts}/configuration-provider.js +0 -0
  299. /package/dist/creatio/{providers → contracts}/crud-provider.js +0 -0
  300. /package/dist/creatio/{providers → contracts}/feature-provider.d.ts +0 -0
  301. /package/dist/creatio/{providers → contracts}/feature-provider.js +0 -0
  302. /package/dist/creatio/{providers → contracts}/process-provider.d.ts +0 -0
  303. /package/dist/creatio/{providers → contracts}/process-provider.js +0 -0
  304. /package/dist/creatio/{providers → contracts}/sys-settings-provider.d.ts +0 -0
  305. /package/dist/creatio/{providers → contracts}/sys-settings-provider.js +0 -0
  306. /package/dist/creatio/{providers → contracts}/user-provider.d.ts +0 -0
  307. /package/dist/creatio/{providers → contracts}/user-provider.js +0 -0
  308. /package/dist/{services → sessions}/index.d.ts +0 -0
  309. /package/dist/{services → sessions}/index.js +0 -0
  310. /package/dist/{services → sessions}/token-refresh-scheduler.d.ts +0 -0
@@ -8,9 +8,19 @@ const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
8
8
  const log_1 = __importDefault(require("../../log"));
9
9
  const utils_1 = require("../../utils");
10
10
  const version_1 = require("../../version");
11
+ const crt_mcp_client_1 = require("./crtmcp/crt-mcp-client");
12
+ const crt_mcp_tool_preparer_1 = require("./crtmcp/crt-mcp-tool-preparer");
13
+ const dataforge_client_1 = require("./dataforge/dataforge-client");
14
+ const dataforge_tool_preparer_1 = require("./dataforge/dataforge-tool-preparer");
15
+ const globalsearch_client_1 = require("./globalsearch/globalsearch-client");
16
+ const globalsearch_tool_preparer_1 = require("./globalsearch/globalsearch-tool-preparer");
11
17
  const filters_1 = require("./filters");
12
18
  const prompts_data_1 = require("./prompts-data");
13
19
  const tools_data_1 = require("./tools-data");
20
+ /** Default page size for `read` when the caller omits `top`, so we never dump an
21
+ * unbounded result set into the model. Explicit `top` (incl. `0` for count-only)
22
+ * is always respected; paginate further with `skip`. */
23
+ const DEFAULT_READ_TOP = 50;
14
24
  class Server {
15
25
  _engines;
16
26
  _descriptors = new Map();
@@ -19,12 +29,30 @@ class Server {
19
29
  _readonly = false;
20
30
  _serverName = version_1.NAME;
21
31
  _serverVersion = version_1.VERSION;
32
+ // DataForge access layer + optional-capability preparers. `_capabilities`
33
+ // records each preparer's startup verdict so core tools (describe-entity)
34
+ // can route through a capability only when it is actually enabled.
35
+ _dataForge;
36
+ _dataForgePreparer;
37
+ _globalSearchPreparer;
38
+ _publishedToolsPreparer;
39
+ _preparers;
40
+ _capabilities = new Map();
22
41
  get authProvider() {
23
42
  return this._engines.authProvider;
24
43
  }
25
44
  constructor(engines, config) {
26
45
  this._engines = engines;
27
46
  this._readonly = config.readonlyMode ?? false;
47
+ this._dataForge = new dataforge_client_1.DataForgeClient(engines.configuration, engines.sysSettings);
48
+ this._dataForgePreparer = new dataforge_tool_preparer_1.DataForgeToolPreparer(this._dataForge);
49
+ this._globalSearchPreparer = new globalsearch_tool_preparer_1.GlobalSearchToolPreparer(new globalsearch_client_1.GlobalSearchClient(engines.configuration, engines.sysSettings));
50
+ this._publishedToolsPreparer = new crt_mcp_tool_preparer_1.CrtMcpPublishingToolPreparer(new crt_mcp_client_1.CrtMcpPublishingClient(engines.configuration, engines.crud), (0, utils_1.envBool)('ENABLE_PUBLISHED_TOOLS', false));
51
+ this._preparers = [
52
+ this._dataForgePreparer,
53
+ this._globalSearchPreparer,
54
+ this._publishedToolsPreparer,
55
+ ];
28
56
  this._registerClientTools();
29
57
  }
30
58
  _registerData() {
@@ -43,7 +71,13 @@ class Server {
43
71
  _normalizeToToolHandler(handler) {
44
72
  return async (args) => {
45
73
  const result = await handler(args);
46
- if (result && typeof result === 'object' && 'content' in result) {
74
+ // Pass through only a genuine MCP envelope (`content` is an array of blocks) — e.g.
75
+ // the published-tools proxy returns an upstream tools/call result already shaped.
76
+ // Raw domain data (incl. server payloads that happen to have a scalar/object
77
+ // `content` field) is stringified, never mistaken for a pre-wrapped result.
78
+ if (result &&
79
+ typeof result === 'object' &&
80
+ Array.isArray(result.content)) {
47
81
  return result;
48
82
  }
49
83
  return {
@@ -94,183 +128,223 @@ class Server {
94
128
  log_1.default.warn('mcp.prompts.register.failed', { error: String(err) });
95
129
  }
96
130
  }
97
- _registerClientTools() {
98
- const crud = this._engines.crud;
99
- const user = this._engines.user;
100
- const sysSettings = this._engines.sysSettings;
101
- this._registerHandlerWithDescriptor('get-current-user-info', tools_data_1.getCurrentUserInfoDescriptor, (0, utils_1.withValidation)(tools_data_1.getCurrentUserInfoInput, () => user.getCurrentUserInfo()));
102
- this._registerHandlerWithDescriptor('list-entities', tools_data_1.listEntitiesDescriptor, (0, utils_1.withValidation)(tools_data_1.listEntitiesInput, async () => {
103
- const sets = await crud.listEntitySets();
104
- return {
105
- content: [
106
- {
107
- type: 'text',
108
- text: JSON.stringify({ results: sets }),
109
- },
110
- ],
111
- };
112
- }));
113
- this._registerHandlerWithDescriptor('describe-entity', tools_data_1.describeEntityDescriptor, (0, utils_1.withValidation)(tools_data_1.describeEntityInput, async ({ entitySet }) => {
114
- const schema = await crud.describeEntity(entitySet);
115
- return {
116
- content: [
117
- {
118
- type: 'text',
119
- text: JSON.stringify(schema),
120
- },
121
- ],
122
- };
123
- }));
124
- this._registerHandlerWithDescriptor('read', tools_data_1.readDescriptor, (0, utils_1.withValidation)(tools_data_1.readInput, async ({ entity, filter, filters, select, top, expand, orderBy }) => {
125
- const structured = (0, filters_1.buildFilterFromStructured)(filters);
126
- let finalFilter = filter || structured;
127
- if (filter && structured) {
128
- finalFilter = `(${filter}) and (${structured})`;
131
+ /** Adapter exposing handler registration to {@link ToolPreparer}s. */
132
+ _toolRegistrar() {
133
+ return {
134
+ register: (name, descriptor, handler) => this._registerHandlerWithDescriptor(name, descriptor, handler),
135
+ };
136
+ }
137
+ /**
138
+ * Run every optional-capability preparer once: probe the environment and let
139
+ * each register its tools only when available. A failing preparer is isolated
140
+ * and recorded as disabled. Invoked from {@link startMcp} after the core tools
141
+ * are in place.
142
+ */
143
+ async _prepareTools() {
144
+ const registrar = this._toolRegistrar();
145
+ for (const preparer of this._preparers) {
146
+ let enabled = false;
147
+ try {
148
+ enabled = await preparer.prepare(registrar);
129
149
  }
130
- return crud.read({
131
- entity,
132
- filter: finalFilter ?? undefined,
133
- select,
134
- top,
135
- expand,
136
- orderBy,
137
- });
138
- }));
139
- this._registerHandlerWithDescriptor('query-sys-settings', tools_data_1.querySysSettingsDescriptor, (0, utils_1.withValidation)(tools_data_1.querySysSettingsInput, async ({ sysSettingCodes }) => {
140
- const result = await sysSettings.queryValues(sysSettingCodes);
141
- return {
142
- content: [
143
- {
144
- type: 'text',
145
- text: JSON.stringify(result, null, 2),
146
- },
147
- ],
148
- };
149
- }));
150
- if (!this._readonly) {
151
- const process = this._engines.process;
152
- const feature = this._engines.feature;
153
- const adminOperation = this._engines.adminOperation;
154
- const configuration = this._engines.configuration;
155
- this._registerHandlerWithDescriptor('create', tools_data_1.createDescriptor, (0, utils_1.withValidation)(tools_data_1.createInput, async ({ entity, data }) => crud.create({ entity, data })));
156
- this._registerHandlerWithDescriptor('update', tools_data_1.updateDescriptor, (0, utils_1.withValidation)(tools_data_1.updateInput, async ({ entity, id, data }) => crud.update({ entity, id, data })));
157
- this._registerHandlerWithDescriptor('delete', tools_data_1.deleteDescriptor, (0, utils_1.withValidation)(tools_data_1.deleteInput, async ({ entity, id }) => crud.delete({ entity, id })));
158
- this._registerHandlerWithDescriptor('execute-process', tools_data_1.executeProcessDescriptor, (0, utils_1.withValidation)(tools_data_1.executeProcessInput, async ({ processName, parameters }) => {
159
- const result = await process.execute({
160
- processName,
161
- parameters: parameters || {},
162
- });
163
- return {
164
- content: [
165
- {
166
- type: 'text',
167
- text: JSON.stringify(result, null, 2),
168
- },
169
- ],
170
- };
171
- }));
172
- this._registerHandlerWithDescriptor('set-sys-settings-value', tools_data_1.setSysSettingsValueDescriptor, (0, utils_1.withValidation)(tools_data_1.setSysSettingsValueInput, async ({ sysSettingsValues }) => {
173
- const result = await sysSettings.setValues(sysSettingsValues);
174
- return {
175
- content: [
176
- {
177
- type: 'text',
178
- text: JSON.stringify(result),
179
- },
180
- ],
181
- };
182
- }));
183
- this._registerHandlerWithDescriptor('create-sys-setting', tools_data_1.createSysSettingDescriptor, (0, utils_1.withValidation)(tools_data_1.createSysSettingInput, async ({ definition, initialValue }) => {
184
- const result = await sysSettings.createSetting({ definition, initialValue });
185
- return {
186
- content: [
187
- {
188
- type: 'text',
189
- text: JSON.stringify(result, null, 2),
190
- },
191
- ],
192
- };
193
- }));
194
- this._registerHandlerWithDescriptor('update-sys-setting-definition', tools_data_1.updateSysSettingDefinitionDescriptor, (0, utils_1.withValidation)(tools_data_1.updateSysSettingDefinitionInput, async ({ id, definition }) => {
195
- const result = await sysSettings.updateDefinition({
150
+ catch (err) {
151
+ log_1.default.warn('mcp.prepare.failed', { preparer: preparer.name, error: String(err) });
152
+ }
153
+ this._capabilities.set(preparer.name, enabled);
154
+ log_1.default.info('mcp.prepare', { preparer: preparer.name, enabled });
155
+ }
156
+ }
157
+ /** Whether DataForge was probed as enabled at startup. */
158
+ _isDataForgeReady() {
159
+ return this._capabilities.get(this._dataForgePreparer.name) === true;
160
+ }
161
+ /** Compile the `read` tool args into a neutral {@link ReadQuery}: structured `filters`
162
+ * become a {@link FilterNode}; a raw `$filter` string and `expand` are carried as
163
+ * OData-only escape hatches. The normalized {@link ReadResult} is mapped back to the
164
+ * tool's established output shape (a bare array, or `{ total, value }` when counting). */
165
+ async _read(args) {
166
+ const { entity, filter, filters, select, top, expand, orderBy, skip, count } = args;
167
+ const odata = {};
168
+ if (filter) {
169
+ odata.rawFilter = filter;
170
+ }
171
+ if (Array.isArray(expand) && expand.length > 0) {
172
+ odata.expand = expand;
173
+ }
174
+ const node = (0, filters_1.buildFilterNode)(filters);
175
+ const order = (0, filters_1.parseOrderBy)(orderBy);
176
+ const query = {
177
+ entity,
178
+ top: top ?? DEFAULT_READ_TOP,
179
+ ...(select ? { columns: select } : {}),
180
+ ...(node ? { filter: node } : {}),
181
+ ...(order ? { order } : {}),
182
+ ...(skip !== undefined ? { skip } : {}),
183
+ ...(count !== undefined ? { count } : {}),
184
+ ...(Object.keys(odata).length ? { odata } : {}),
185
+ };
186
+ const result = await this._engines.crud.read(query);
187
+ return count ? { total: result.totalCount, value: result.items } : result.items;
188
+ }
189
+ /** When DataForge is enabled, prefer its richer column details and fall back to the active
190
+ * CRUD backend's schema on a per-call miss. The `source` discriminator is part of the
191
+ * public tool contract and reflects where the schema actually came from. */
192
+ async _describeEntity(entitySet) {
193
+ if (this._isDataForgeReady()) {
194
+ const dataForge = await this._dataForge.getColumnsOrNull(entitySet);
195
+ if (dataForge !== null) {
196
+ return { source: 'dataforge', entitySet, dataForge };
197
+ }
198
+ }
199
+ const metadata = await this._engines.crud.describeEntity(entitySet);
200
+ const source = this._engines.crud.kind === 'creatio-dataservice' ? 'dataservice' : 'odata';
201
+ return { source, entitySet, metadata };
202
+ }
203
+ /**
204
+ * The client tool surface as data. Handlers return raw domain results; MCP content
205
+ * wrapping is applied once by {@link _normalizeToToolHandler}. Adding a tool is a new
206
+ * row here (plus its descriptor) — no new bespoke wrapping. Mutating tools are listed
207
+ * separately and only registered when not in readonly mode.
208
+ */
209
+ _clientToolDefs() {
210
+ const { crud, user, sysSettings, process, feature, adminOperation, configuration } = this._engines;
211
+ const core = [
212
+ {
213
+ name: 'get-current-user-info',
214
+ descriptor: tools_data_1.getCurrentUserInfoDescriptor,
215
+ input: tools_data_1.getCurrentUserInfoInput,
216
+ run: () => user.getCurrentUserInfo(),
217
+ },
218
+ {
219
+ name: 'list-entities',
220
+ descriptor: tools_data_1.listEntitiesDescriptor,
221
+ input: tools_data_1.listEntitiesInput,
222
+ run: async () => ({ results: await crud.listEntitySets() }),
223
+ },
224
+ {
225
+ name: 'describe-entity',
226
+ descriptor: tools_data_1.describeEntityDescriptor,
227
+ input: tools_data_1.describeEntityInput,
228
+ run: ({ entitySet }) => this._describeEntity(entitySet),
229
+ },
230
+ {
231
+ name: 'read',
232
+ descriptor: (0, tools_data_1.buildReadDescriptor)(crud.capabilities),
233
+ input: (0, tools_data_1.buildReadInput)(crud.capabilities),
234
+ run: (args) => this._read(args),
235
+ },
236
+ {
237
+ name: 'query-sys-settings',
238
+ descriptor: tools_data_1.querySysSettingsDescriptor,
239
+ input: tools_data_1.querySysSettingsInput,
240
+ run: ({ sysSettingCodes }) => sysSettings.queryValues(sysSettingCodes),
241
+ },
242
+ ];
243
+ const mutating = [
244
+ {
245
+ name: 'create',
246
+ descriptor: tools_data_1.createDescriptor,
247
+ input: tools_data_1.createInput,
248
+ run: ({ entity, data }) => crud.create({ entity, data }),
249
+ },
250
+ {
251
+ name: 'update',
252
+ descriptor: tools_data_1.updateDescriptor,
253
+ input: tools_data_1.updateInput,
254
+ run: ({ entity, id, data }) => crud.update({ entity, id, data }),
255
+ },
256
+ {
257
+ name: 'delete',
258
+ descriptor: tools_data_1.deleteDescriptor,
259
+ input: tools_data_1.deleteInput,
260
+ run: ({ entity, id }) => crud.delete({ entity, id }),
261
+ },
262
+ {
263
+ name: 'execute-process',
264
+ descriptor: tools_data_1.executeProcessDescriptor,
265
+ input: tools_data_1.executeProcessInput,
266
+ run: ({ processName, parameters }) => process.execute({ processName, parameters: parameters || {} }),
267
+ },
268
+ {
269
+ name: 'set-sys-settings-value',
270
+ descriptor: tools_data_1.setSysSettingsValueDescriptor,
271
+ input: tools_data_1.setSysSettingsValueInput,
272
+ run: ({ sysSettingsValues }) => sysSettings.setValues(sysSettingsValues),
273
+ },
274
+ {
275
+ name: 'create-sys-setting',
276
+ descriptor: tools_data_1.createSysSettingDescriptor,
277
+ input: tools_data_1.createSysSettingInput,
278
+ run: ({ definition, initialValue }) => sysSettings.createSetting({ definition, initialValue }),
279
+ },
280
+ {
281
+ name: 'update-sys-setting-definition',
282
+ descriptor: tools_data_1.updateSysSettingDefinitionDescriptor,
283
+ input: tools_data_1.updateSysSettingDefinitionInput,
284
+ run: ({ id, definition }) => sysSettings.updateDefinition({
196
285
  ...definition,
197
286
  id,
198
- });
199
- return {
200
- content: [
201
- {
202
- type: 'text',
203
- text: JSON.stringify(result, null, 2),
204
- },
205
- ],
206
- };
207
- }));
208
- this._registerHandlerWithDescriptor('refresh-feature-cache', tools_data_1.refreshFeatureCacheDescriptor, (0, utils_1.withValidation)(tools_data_1.refreshFeatureCacheInput, async ({ featureCode }) => {
209
- const result = await feature.clearFeaturesCache(featureCode);
210
- return {
211
- content: [
212
- {
213
- type: 'text',
214
- text: JSON.stringify(result, null, 2),
215
- },
216
- ],
217
- };
218
- }));
219
- this._registerHandlerWithDescriptor('upsert-admin-operation', tools_data_1.upsertAdminOperationDescriptor, (0, utils_1.withValidation)(tools_data_1.upsertAdminOperationInput, async ({ id, name, code, description }) => {
220
- const result = await adminOperation.upsertAdminOperation({
287
+ }),
288
+ },
289
+ {
290
+ name: 'refresh-feature-cache',
291
+ descriptor: tools_data_1.refreshFeatureCacheDescriptor,
292
+ input: tools_data_1.refreshFeatureCacheInput,
293
+ run: ({ featureCode }) => feature.clearFeaturesCache(featureCode),
294
+ },
295
+ {
296
+ name: 'upsert-admin-operation',
297
+ descriptor: tools_data_1.upsertAdminOperationDescriptor,
298
+ input: tools_data_1.upsertAdminOperationInput,
299
+ run: ({ id, name, code, description }) => adminOperation.upsertAdminOperation({
221
300
  ...(id !== undefined ? { id } : {}),
222
301
  name,
223
302
  code,
224
303
  ...(description !== undefined ? { description } : {}),
225
- });
226
- return {
227
- content: [
228
- { type: 'text', text: JSON.stringify(result, null, 2) },
229
- ],
230
- };
231
- }));
232
- this._registerHandlerWithDescriptor('delete-admin-operation', tools_data_1.deleteAdminOperationDescriptor, (0, utils_1.withValidation)(tools_data_1.deleteAdminOperationInput, async ({ ids }) => {
233
- const result = await adminOperation.deleteAdminOperation(ids);
234
- return {
235
- content: [
236
- { type: 'text', text: JSON.stringify(result, null, 2) },
237
- ],
238
- };
239
- }));
240
- this._registerHandlerWithDescriptor('set-admin-operation-grantee', tools_data_1.setAdminOperationGranteeDescriptor, (0, utils_1.withValidation)(tools_data_1.setAdminOperationGranteeInput, async ({ adminOperationId, adminUnitIds, canExecute }) => {
241
- const result = await adminOperation.setAdminOperationGrantee({
304
+ }),
305
+ },
306
+ {
307
+ name: 'delete-admin-operation',
308
+ descriptor: tools_data_1.deleteAdminOperationDescriptor,
309
+ input: tools_data_1.deleteAdminOperationInput,
310
+ run: ({ ids }) => adminOperation.deleteAdminOperation(ids),
311
+ },
312
+ {
313
+ name: 'set-admin-operation-grantee',
314
+ descriptor: tools_data_1.setAdminOperationGranteeDescriptor,
315
+ input: tools_data_1.setAdminOperationGranteeInput,
316
+ run: ({ adminOperationId, adminUnitIds, canExecute }) => adminOperation.setAdminOperationGrantee({
242
317
  adminOperationId,
243
318
  adminUnitIds,
244
319
  canExecute,
245
- });
246
- return {
247
- content: [
248
- { type: 'text', text: JSON.stringify(result, null, 2) },
249
- ],
250
- };
251
- }));
252
- this._registerHandlerWithDescriptor('delete-admin-operation-grantee', tools_data_1.deleteAdminOperationGranteeDescriptor, (0, utils_1.withValidation)(tools_data_1.deleteAdminOperationGranteeInput, async ({ ids }) => {
253
- const result = await adminOperation.deleteAdminOperationGrantee(ids);
254
- return {
255
- content: [
256
- { type: 'text', text: JSON.stringify(result, null, 2) },
257
- ],
258
- };
259
- }));
260
- this._registerHandlerWithDescriptor('call-configuration-service', tools_data_1.callConfigurationServiceDescriptor, (0, utils_1.withValidation)(tools_data_1.callConfigurationServiceInput, async ({ service, method, httpMethod, body, query }) => {
261
- const result = await configuration.call({
320
+ }),
321
+ },
322
+ {
323
+ name: 'delete-admin-operation-grantee',
324
+ descriptor: tools_data_1.deleteAdminOperationGranteeDescriptor,
325
+ input: tools_data_1.deleteAdminOperationGranteeInput,
326
+ run: ({ ids }) => adminOperation.deleteAdminOperationGrantee(ids),
327
+ },
328
+ {
329
+ name: 'call-configuration-service',
330
+ descriptor: tools_data_1.callConfigurationServiceDescriptor,
331
+ input: tools_data_1.callConfigurationServiceInput,
332
+ run: ({ service, method, httpMethod, body, query }) => configuration.call({
262
333
  service,
263
334
  method,
264
335
  httpMethod,
265
336
  ...(body !== undefined ? { body } : {}),
266
337
  ...(query !== undefined ? { query } : {}),
267
- });
268
- return {
269
- content: [
270
- { type: 'text', text: JSON.stringify(result, null, 2) },
271
- ],
272
- };
273
- }));
338
+ }),
339
+ },
340
+ ];
341
+ return { core, mutating };
342
+ }
343
+ _registerClientTools() {
344
+ const { core, mutating } = this._clientToolDefs();
345
+ const defs = this._readonly ? core : [...core, ...mutating];
346
+ for (const def of defs) {
347
+ this._registerHandlerWithDescriptor(def.name, def.descriptor, (0, utils_1.withValidation)(def.input, def.run));
274
348
  }
275
349
  }
276
350
  async startMcp() {
@@ -279,6 +353,12 @@ class Server {
279
353
  }
280
354
  this._mcp = new mcp_js_1.McpServer({ name: this._serverName, version: this._serverVersion });
281
355
  this._registerData();
356
+ // Probe optional capabilities WITHOUT blocking the MCP handshake. These do
357
+ // network I/O (DataForge/Global Search probes, and the publishing app's
358
+ // tools/list, which can be slow) — awaiting here would delay connect past the
359
+ // client's init timeout. They register into the live _mcp as they resolve and
360
+ // the SDK emits notifications/tools/list_changed so clients pick them up.
361
+ void this._prepareTools().catch((err) => log_1.default.warn('mcp.prepare.error', { error: String(err) }));
282
362
  log_1.default.serverStart(this._serverName, this._serverVersion, {
283
363
  tools: Array.from(this._handlers.keys()),
284
364
  prompts: prompts_data_1.ALL_PROMPTS.length,
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Tool preparation contracts.
3
+ *
4
+ * A {@link ToolPreparer} encapsulates one optional capability: it probes the
5
+ * environment once at startup and, only when the capability is available,
6
+ * registers the MCP tools it owns through a {@link ToolRegistrar}. This keeps
7
+ * the Server open for extension (add a preparer) and closed for modification.
8
+ */
9
+ export type ToolHandler = (payload: any) => Promise<any>;
10
+ /** Sink for tool registration, decoupling preparers from the Server internals. */
11
+ export interface ToolRegistrar {
12
+ register(name: string, descriptor: unknown, handler: ToolHandler): void;
13
+ }
14
+ /** A self-contained, probe-then-register unit for one optional capability. */
15
+ export interface ToolPreparer {
16
+ /** Stable capability key, also used to look up the prepare result. */
17
+ readonly name: string;
18
+ /**
19
+ * Probe the environment and, when the capability is available, register its
20
+ * tools via {@link registrar}.
21
+ *
22
+ * @returns `true` when the capability is enabled and its tools were registered.
23
+ */
24
+ prepare(registrar: ToolRegistrar): Promise<boolean>;
25
+ }
26
+ //# sourceMappingURL=tool-preparer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-preparer.d.ts","sourceRoot":"","sources":["../../../src/server/mcp/tool-preparer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAEzD,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;CACxE;AAED,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,OAAO,CAAC,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACpD"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * Tool preparation contracts.
4
+ *
5
+ * A {@link ToolPreparer} encapsulates one optional capability: it probes the
6
+ * environment once at startup and, only when the capability is available,
7
+ * registers the MCP tools it owns through a {@link ToolRegistrar}. This keeps
8
+ * the Server open for extension (add a preparer) and closed for modification.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ //# sourceMappingURL=tool-preparer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-preparer.js","sourceRoot":"","sources":["../../../src/server/mcp/tool-preparer.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}