d365fo-mcp 1.0.0 → 1.2.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 (684) hide show
  1. package/README.md +12 -92
  2. package/bridge/D365MetadataBridge/D365MetadataBridge.csproj +116 -0
  3. package/bridge/D365MetadataBridge/Models/Models.cs +879 -0
  4. package/bridge/D365MetadataBridge/Program.cs +448 -0
  5. package/bridge/D365MetadataBridge/Protocol/BridgeProtocol.cs +178 -0
  6. package/bridge/D365MetadataBridge/Protocol/RequestDispatcher.cs +1107 -0
  7. package/bridge/D365MetadataBridge/Services/CrossReferenceService.cs +686 -0
  8. package/bridge/D365MetadataBridge/Services/FormAuthoringDefaults.cs +66 -0
  9. package/bridge/D365MetadataBridge/Services/MetadataReadService.cs +1761 -0
  10. package/bridge/D365MetadataBridge/Services/MetadataWriteService.cs +3672 -0
  11. package/dist/bridge/bridgeAdapter.d.ts +14 -1
  12. package/dist/bridge/bridgeAdapter.js +28 -6
  13. package/dist/bridge/bridgeClient.d.ts +11 -0
  14. package/dist/bridge/bridgeClient.js +17 -4
  15. package/dist/cli/bridgePath.d.ts +3 -0
  16. package/dist/cli/bridgePath.js +27 -0
  17. package/dist/cli/commands/connect.d.ts +32 -0
  18. package/dist/cli/commands/connect.js +250 -0
  19. package/dist/cli/commands/doctor.js +91 -11
  20. package/dist/cli/commands/indexCmd.js +17 -5
  21. package/dist/cli/commands/instance.js +4 -0
  22. package/dist/cli/commands/setup.js +80 -8
  23. package/dist/cli/commands/update.d.ts +15 -0
  24. package/dist/cli/commands/update.js +71 -19
  25. package/dist/cli/context.d.ts +96 -9
  26. package/dist/cli/context.js +164 -17
  27. package/dist/cli/exec.d.ts +9 -0
  28. package/dist/cli/exec.js +17 -0
  29. package/dist/cli/index.js +20 -1
  30. package/dist/cli/mcpJson.js +7 -4
  31. package/dist/cli/npmRegistry.d.ts +27 -0
  32. package/dist/cli/npmRegistry.js +83 -0
  33. package/dist/cli/target.js +3 -3
  34. package/dist/cli/ui.d.ts +5 -5
  35. package/dist/cli/ui.js +10 -9
  36. package/dist/config/settings.js +11 -0
  37. package/dist/index.js +3 -2
  38. package/dist/metadata/labelParser.d.ts +4 -1
  39. package/dist/metadata/labelParser.js +11 -3
  40. package/dist/metadata/symbolIndex.d.ts +30 -7
  41. package/dist/metadata/symbolIndex.js +89 -30
  42. package/dist/metadata/types.d.ts +1 -1
  43. package/dist/metadata/xmlParser.js +10 -2
  44. package/dist/scripts/build-database.js +6067 -0
  45. package/dist/scripts/build-fts.js +4004 -0
  46. package/dist/scripts/extract-metadata.js +3477 -0
  47. package/dist/scripts/symbolCountsWorker.js +22 -0
  48. package/dist/server/mcpServer.js +2 -1
  49. package/dist/server/toolSchemas/d365foFile.js +6 -1
  50. package/dist/server/toolSchemas/prepare.js +1 -1
  51. package/dist/tools/codeGen.js +4 -3
  52. package/dist/tools/createD365File.d.ts +20 -2
  53. package/dist/tools/createD365File.js +245 -42
  54. package/dist/tools/createdArtifactLedger.d.ts +49 -0
  55. package/dist/tools/createdArtifactLedger.js +56 -0
  56. package/dist/tools/d365foFileOpSpecs.d.ts +55 -0
  57. package/dist/tools/d365foFileOpSpecs.js +142 -1
  58. package/dist/tools/edtInfo.d.ts +1 -2
  59. package/dist/tools/edtInfo.js +103 -1
  60. package/dist/tools/generateD365Xml.js +8 -0
  61. package/dist/tools/generateSmartForm.js +6 -1
  62. package/dist/tools/getLabelInfo.js +4 -1
  63. package/dist/tools/modifyD365File.d.ts +33 -0
  64. package/dist/tools/modifyD365File.js +305 -17
  65. package/dist/tools/prepareCreate.d.ts +2 -0
  66. package/dist/tools/prepareCreate.js +1 -1
  67. package/dist/tools/queryViewXml.d.ts +25 -8
  68. package/dist/tools/queryViewXml.js +61 -18
  69. package/dist/tools/resolveReferences.js +4 -1
  70. package/dist/tools/runBpCheck.d.ts +12 -0
  71. package/dist/tools/runBpCheck.js +57 -9
  72. package/dist/tools/search.d.ts +18 -0
  73. package/dist/tools/search.js +55 -3
  74. package/dist/tools/searchLabels.js +35 -7
  75. package/dist/tools/securityArtifactInfo.js +16 -1
  76. package/dist/tools/serviceXml.d.ts +39 -0
  77. package/dist/tools/serviceXml.js +110 -0
  78. package/dist/tools/undoLastModification.d.ts +3 -9
  79. package/dist/tools/undoLastModification.js +67 -0
  80. package/dist/tools/updateSymbolIndex.d.ts +14 -0
  81. package/dist/tools/updateSymbolIndex.js +38 -4
  82. package/dist/tools/validateXpp.d.ts +2 -0
  83. package/dist/tools/validateXpp.js +121 -0
  84. package/dist/tools/xppKnowledge.js +14 -8
  85. package/dist/utils/axTablePropertyOrder.d.ts +60 -0
  86. package/dist/utils/axTablePropertyOrder.js +146 -0
  87. package/dist/utils/exactMatchRanking.d.ts +31 -0
  88. package/dist/utils/exactMatchRanking.js +48 -0
  89. package/dist/utils/extractManifest.d.ts +11 -1
  90. package/dist/utils/fieldControlTypes.d.ts +14 -0
  91. package/dist/utils/fieldControlTypes.js +33 -0
  92. package/dist/utils/formPatternTemplates.d.ts +15 -0
  93. package/dist/utils/formPatternTemplates.js +11 -3
  94. package/dist/utils/labelReference.d.ts +34 -0
  95. package/dist/utils/labelReference.js +72 -0
  96. package/dist/utils/loadEnv.js +38 -2
  97. package/dist/utils/smartXmlBuilder.js +36 -39
  98. package/dist/version.d.ts +2 -0
  99. package/dist/version.js +18 -0
  100. package/package.json +11 -3
  101. package/dist/bridge/bridgeAdapter.d.ts.map +0 -1
  102. package/dist/bridge/bridgeAdapter.js.map +0 -1
  103. package/dist/bridge/bridgeClient.d.ts.map +0 -1
  104. package/dist/bridge/bridgeClient.js.map +0 -1
  105. package/dist/bridge/bridgeTypes.d.ts.map +0 -1
  106. package/dist/bridge/bridgeTypes.js.map +0 -1
  107. package/dist/bridge/debouncedRefresh.d.ts.map +0 -1
  108. package/dist/bridge/debouncedRefresh.js.map +0 -1
  109. package/dist/bridge/index.d.ts.map +0 -1
  110. package/dist/bridge/index.js.map +0 -1
  111. package/dist/cli/commands/config.d.ts.map +0 -1
  112. package/dist/cli/commands/config.js.map +0 -1
  113. package/dist/cli/commands/doctor.d.ts.map +0 -1
  114. package/dist/cli/commands/doctor.js.map +0 -1
  115. package/dist/cli/commands/indexCmd.d.ts.map +0 -1
  116. package/dist/cli/commands/indexCmd.js.map +0 -1
  117. package/dist/cli/commands/instance.d.ts.map +0 -1
  118. package/dist/cli/commands/instance.js.map +0 -1
  119. package/dist/cli/commands/setup.d.ts.map +0 -1
  120. package/dist/cli/commands/setup.js.map +0 -1
  121. package/dist/cli/commands/start.d.ts.map +0 -1
  122. package/dist/cli/commands/start.js.map +0 -1
  123. package/dist/cli/commands/update.d.ts.map +0 -1
  124. package/dist/cli/commands/update.js.map +0 -1
  125. package/dist/cli/context.d.ts.map +0 -1
  126. package/dist/cli/context.js.map +0 -1
  127. package/dist/cli/envFile.d.ts.map +0 -1
  128. package/dist/cli/envFile.js.map +0 -1
  129. package/dist/cli/exec.d.ts.map +0 -1
  130. package/dist/cli/exec.js.map +0 -1
  131. package/dist/cli/index.d.ts.map +0 -1
  132. package/dist/cli/index.js.map +0 -1
  133. package/dist/cli/instances.d.ts.map +0 -1
  134. package/dist/cli/instances.js.map +0 -1
  135. package/dist/cli/mcpJson.d.ts.map +0 -1
  136. package/dist/cli/mcpJson.js.map +0 -1
  137. package/dist/cli/settingsPrompt.d.ts.map +0 -1
  138. package/dist/cli/settingsPrompt.js.map +0 -1
  139. package/dist/cli/settingsStore.d.ts.map +0 -1
  140. package/dist/cli/settingsStore.js.map +0 -1
  141. package/dist/cli/target.d.ts.map +0 -1
  142. package/dist/cli/target.js.map +0 -1
  143. package/dist/cli/ui.d.ts.map +0 -1
  144. package/dist/cli/ui.js.map +0 -1
  145. package/dist/cli/xppConfig.d.ts.map +0 -1
  146. package/dist/cli/xppConfig.js.map +0 -1
  147. package/dist/config/configFile.d.ts.map +0 -1
  148. package/dist/config/configFile.js.map +0 -1
  149. package/dist/config/settings.d.ts.map +0 -1
  150. package/dist/config/settings.js.map +0 -1
  151. package/dist/database/download.d.ts.map +0 -1
  152. package/dist/database/download.js.map +0 -1
  153. package/dist/eval/audit/knowledgeAudit.d.ts +0 -66
  154. package/dist/eval/audit/knowledgeAudit.d.ts.map +0 -1
  155. package/dist/eval/audit/knowledgeAudit.js +0 -117
  156. package/dist/eval/audit/knowledgeAudit.js.map +0 -1
  157. package/dist/eval/audit/knowledgeAuditCli.d.ts +0 -17
  158. package/dist/eval/audit/knowledgeAuditCli.d.ts.map +0 -1
  159. package/dist/eval/audit/knowledgeAuditCli.js +0 -83
  160. package/dist/eval/audit/knowledgeAuditCli.js.map +0 -1
  161. package/dist/eval/audit/knowledgeRefs.d.ts +0 -37
  162. package/dist/eval/audit/knowledgeRefs.d.ts.map +0 -1
  163. package/dist/eval/audit/knowledgeRefs.js +0 -150
  164. package/dist/eval/audit/knowledgeRefs.js.map +0 -1
  165. package/dist/eval/audit/symbolLookup.d.ts +0 -23
  166. package/dist/eval/audit/symbolLookup.d.ts.map +0 -1
  167. package/dist/eval/audit/symbolLookup.js +0 -80
  168. package/dist/eval/audit/symbolLookup.js.map +0 -1
  169. package/dist/eval/coverage/coverage.d.ts +0 -65
  170. package/dist/eval/coverage/coverage.d.ts.map +0 -1
  171. package/dist/eval/coverage/coverage.js +0 -136
  172. package/dist/eval/coverage/coverage.js.map +0 -1
  173. package/dist/eval/coverage/coverageCli.d.ts +0 -13
  174. package/dist/eval/coverage/coverageCli.d.ts.map +0 -1
  175. package/dist/eval/coverage/coverageCli.js +0 -106
  176. package/dist/eval/coverage/coverageCli.js.map +0 -1
  177. package/dist/eval/coverage/sources.d.ts +0 -17
  178. package/dist/eval/coverage/sources.d.ts.map +0 -1
  179. package/dist/eval/coverage/sources.js +0 -40
  180. package/dist/eval/coverage/sources.js.map +0 -1
  181. package/dist/eval/coverage/taxonomy.d.ts +0 -59
  182. package/dist/eval/coverage/taxonomy.d.ts.map +0 -1
  183. package/dist/eval/coverage/taxonomy.js +0 -400
  184. package/dist/eval/coverage/taxonomy.js.map +0 -1
  185. package/dist/eval/improver/caseMining.d.ts +0 -55
  186. package/dist/eval/improver/caseMining.d.ts.map +0 -1
  187. package/dist/eval/improver/caseMining.js +0 -64
  188. package/dist/eval/improver/caseMining.js.map +0 -1
  189. package/dist/eval/improver/caseMiningCli.d.ts +0 -10
  190. package/dist/eval/improver/caseMiningCli.d.ts.map +0 -1
  191. package/dist/eval/improver/caseMiningCli.js +0 -50
  192. package/dist/eval/improver/caseMiningCli.js.map +0 -1
  193. package/dist/eval/improver/cli.d.ts +0 -11
  194. package/dist/eval/improver/cli.d.ts.map +0 -1
  195. package/dist/eval/improver/cli.js +0 -73
  196. package/dist/eval/improver/cli.js.map +0 -1
  197. package/dist/eval/improver/cluster.d.ts +0 -47
  198. package/dist/eval/improver/cluster.d.ts.map +0 -1
  199. package/dist/eval/improver/cluster.js +0 -0
  200. package/dist/eval/improver/cluster.js.map +0 -1
  201. package/dist/eval/improver/corpusIO.d.ts +0 -26
  202. package/dist/eval/improver/corpusIO.d.ts.map +0 -1
  203. package/dist/eval/improver/corpusIO.js +0 -50
  204. package/dist/eval/improver/corpusIO.js.map +0 -1
  205. package/dist/eval/improver/fixBrief.d.ts +0 -34
  206. package/dist/eval/improver/fixBrief.d.ts.map +0 -1
  207. package/dist/eval/improver/fixBrief.js +0 -69
  208. package/dist/eval/improver/fixBrief.js.map +0 -1
  209. package/dist/eval/improver/fixBriefCli.d.ts +0 -11
  210. package/dist/eval/improver/fixBriefCli.d.ts.map +0 -1
  211. package/dist/eval/improver/fixBriefCli.js +0 -46
  212. package/dist/eval/improver/fixBriefCli.js.map +0 -1
  213. package/dist/eval/improver/flakeDetection.d.ts +0 -50
  214. package/dist/eval/improver/flakeDetection.d.ts.map +0 -1
  215. package/dist/eval/improver/flakeDetection.js +0 -0
  216. package/dist/eval/improver/flakeDetection.js.map +0 -1
  217. package/dist/eval/improver/flakeDetectionCli.d.ts +0 -8
  218. package/dist/eval/improver/flakeDetectionCli.d.ts.map +0 -1
  219. package/dist/eval/improver/flakeDetectionCli.js +0 -27
  220. package/dist/eval/improver/flakeDetectionCli.js.map +0 -1
  221. package/dist/eval/improver/heldout.d.ts +0 -44
  222. package/dist/eval/improver/heldout.d.ts.map +0 -1
  223. package/dist/eval/improver/heldout.js +0 -52
  224. package/dist/eval/improver/heldout.js.map +0 -1
  225. package/dist/eval/improver/knowledgeFeedback.d.ts +0 -56
  226. package/dist/eval/improver/knowledgeFeedback.d.ts.map +0 -1
  227. package/dist/eval/improver/knowledgeFeedback.js +0 -88
  228. package/dist/eval/improver/knowledgeFeedback.js.map +0 -1
  229. package/dist/eval/improver/knowledgeFeedbackCli.d.ts +0 -8
  230. package/dist/eval/improver/knowledgeFeedbackCli.d.ts.map +0 -1
  231. package/dist/eval/improver/knowledgeFeedbackCli.js +0 -28
  232. package/dist/eval/improver/knowledgeFeedbackCli.js.map +0 -1
  233. package/dist/eval/improver/report.d.ts +0 -36
  234. package/dist/eval/improver/report.d.ts.map +0 -1
  235. package/dist/eval/improver/report.js +0 -61
  236. package/dist/eval/improver/report.js.map +0 -1
  237. package/dist/eval/improver/reportCli.d.ts +0 -7
  238. package/dist/eval/improver/reportCli.d.ts.map +0 -1
  239. package/dist/eval/improver/reportCli.js +0 -27
  240. package/dist/eval/improver/reportCli.js.map +0 -1
  241. package/dist/eval/oracle/actualArtifactResolution.d.ts +0 -49
  242. package/dist/eval/oracle/actualArtifactResolution.d.ts.map +0 -1
  243. package/dist/eval/oracle/actualArtifactResolution.js +0 -73
  244. package/dist/eval/oracle/actualArtifactResolution.js.map +0 -1
  245. package/dist/eval/oracle/cli.d.ts +0 -30
  246. package/dist/eval/oracle/cli.d.ts.map +0 -1
  247. package/dist/eval/oracle/cli.js +0 -179
  248. package/dist/eval/oracle/cli.js.map +0 -1
  249. package/dist/eval/oracle/diff.d.ts +0 -26
  250. package/dist/eval/oracle/diff.d.ts.map +0 -1
  251. package/dist/eval/oracle/diff.js +0 -51
  252. package/dist/eval/oracle/diff.js.map +0 -1
  253. package/dist/eval/oracle/index.d.ts +0 -81
  254. package/dist/eval/oracle/index.d.ts.map +0 -1
  255. package/dist/eval/oracle/index.js +0 -55
  256. package/dist/eval/oracle/index.js.map +0 -1
  257. package/dist/eval/oracle/normalize.d.ts +0 -85
  258. package/dist/eval/oracle/normalize.d.ts.map +0 -1
  259. package/dist/eval/oracle/normalize.js +0 -321
  260. package/dist/eval/oracle/normalize.js.map +0 -1
  261. package/dist/eval/oracle/score.d.ts +0 -26
  262. package/dist/eval/oracle/score.d.ts.map +0 -1
  263. package/dist/eval/oracle/score.js +0 -15
  264. package/dist/eval/oracle/score.js.map +0 -1
  265. package/dist/eval/oracle/systest.d.ts +0 -30
  266. package/dist/eval/oracle/systest.d.ts.map +0 -1
  267. package/dist/eval/oracle/systest.js +0 -98
  268. package/dist/eval/oracle/systest.js.map +0 -1
  269. package/dist/index.d.ts.map +0 -1
  270. package/dist/index.js.map +0 -1
  271. package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.d.ts.map +0 -1
  272. package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.js.map +0 -1
  273. package/dist/knowledge/formPatterns/catalog/subPatterns/fields.d.ts.map +0 -1
  274. package/dist/knowledge/formPatterns/catalog/subPatterns/fields.js.map +0 -1
  275. package/dist/knowledge/formPatterns/catalog/subPatterns/panels.d.ts.map +0 -1
  276. package/dist/knowledge/formPatterns/catalog/subPatterns/panels.js.map +0 -1
  277. package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.d.ts.map +0 -1
  278. package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.js.map +0 -1
  279. package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.d.ts.map +0 -1
  280. package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.js.map +0 -1
  281. package/dist/knowledge/formPatterns/catalog/topLevel/common.d.ts.map +0 -1
  282. package/dist/knowledge/formPatterns/catalog/topLevel/common.js.map +0 -1
  283. package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.d.ts.map +0 -1
  284. package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.js.map +0 -1
  285. package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.d.ts.map +0 -1
  286. package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.js.map +0 -1
  287. package/dist/knowledge/formPatterns/catalog/topLevel/dialog.d.ts.map +0 -1
  288. package/dist/knowledge/formPatterns/catalog/topLevel/dialog.js.map +0 -1
  289. package/dist/knowledge/formPatterns/catalog/topLevel/factBox.d.ts.map +0 -1
  290. package/dist/knowledge/formPatterns/catalog/topLevel/factBox.js.map +0 -1
  291. package/dist/knowledge/formPatterns/catalog/topLevel/listPage.d.ts.map +0 -1
  292. package/dist/knowledge/formPatterns/catalog/topLevel/listPage.js.map +0 -1
  293. package/dist/knowledge/formPatterns/catalog/topLevel/lookup.d.ts.map +0 -1
  294. package/dist/knowledge/formPatterns/catalog/topLevel/lookup.js.map +0 -1
  295. package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.d.ts.map +0 -1
  296. package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.js.map +0 -1
  297. package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.d.ts.map +0 -1
  298. package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.js.map +0 -1
  299. package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.d.ts.map +0 -1
  300. package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.js.map +0 -1
  301. package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.d.ts.map +0 -1
  302. package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.js.map +0 -1
  303. package/dist/knowledge/formPatterns/catalog/topLevel/task.d.ts.map +0 -1
  304. package/dist/knowledge/formPatterns/catalog/topLevel/task.js.map +0 -1
  305. package/dist/knowledge/formPatterns/catalog/topLevel/wizard.d.ts.map +0 -1
  306. package/dist/knowledge/formPatterns/catalog/topLevel/wizard.js.map +0 -1
  307. package/dist/knowledge/formPatterns/catalog/topLevel/workspace.d.ts.map +0 -1
  308. package/dist/knowledge/formPatterns/catalog/topLevel/workspace.js.map +0 -1
  309. package/dist/knowledge/formPatterns/crossCheck.d.ts.map +0 -1
  310. package/dist/knowledge/formPatterns/crossCheck.js.map +0 -1
  311. package/dist/knowledge/formPatterns/index.d.ts.map +0 -1
  312. package/dist/knowledge/formPatterns/index.js.map +0 -1
  313. package/dist/knowledge/formPatterns/methodStubs.d.ts.map +0 -1
  314. package/dist/knowledge/formPatterns/methodStubs.js.map +0 -1
  315. package/dist/knowledge/formPatterns/types.d.ts.map +0 -1
  316. package/dist/knowledge/formPatterns/types.js.map +0 -1
  317. package/dist/metadata/enhancedParser.d.ts.map +0 -1
  318. package/dist/metadata/enhancedParser.js.map +0 -1
  319. package/dist/metadata/formPatternMiner.d.ts.map +0 -1
  320. package/dist/metadata/formPatternMiner.js.map +0 -1
  321. package/dist/metadata/labelParser.d.ts.map +0 -1
  322. package/dist/metadata/labelParser.js.map +0 -1
  323. package/dist/metadata/symbolCountsWorker.d.ts.map +0 -1
  324. package/dist/metadata/symbolCountsWorker.js.map +0 -1
  325. package/dist/metadata/symbolIndex.d.ts.map +0 -1
  326. package/dist/metadata/symbolIndex.js.map +0 -1
  327. package/dist/metadata/types.d.ts.map +0 -1
  328. package/dist/metadata/types.js.map +0 -1
  329. package/dist/metadata/xmlParser.d.ts.map +0 -1
  330. package/dist/metadata/xmlParser.js.map +0 -1
  331. package/dist/metadata/xppDeclaration.d.ts.map +0 -1
  332. package/dist/metadata/xppDeclaration.js.map +0 -1
  333. package/dist/middleware/apiKeyAuth.d.ts.map +0 -1
  334. package/dist/middleware/apiKeyAuth.js.map +0 -1
  335. package/dist/middleware/rateLimiter.d.ts.map +0 -1
  336. package/dist/middleware/rateLimiter.js.map +0 -1
  337. package/dist/prompts/codeReview.d.ts.map +0 -1
  338. package/dist/prompts/codeReview.js.map +0 -1
  339. package/dist/prompts/index.d.ts.map +0 -1
  340. package/dist/prompts/index.js.map +0 -1
  341. package/dist/prompts/systemInstructions.d.ts.map +0 -1
  342. package/dist/prompts/systemInstructions.js.map +0 -1
  343. package/dist/resources/classResource.d.ts.map +0 -1
  344. package/dist/resources/classResource.js.map +0 -1
  345. package/dist/resources/index.d.ts.map +0 -1
  346. package/dist/resources/index.js.map +0 -1
  347. package/dist/server/mcpServer.d.ts.map +0 -1
  348. package/dist/server/mcpServer.js.map +0 -1
  349. package/dist/server/serverMode.d.ts.map +0 -1
  350. package/dist/server/serverMode.js.map +0 -1
  351. package/dist/server/toolAnnotations.d.ts.map +0 -1
  352. package/dist/server/toolAnnotations.js.map +0 -1
  353. package/dist/server/toolSchemas/analyzeCode.d.ts.map +0 -1
  354. package/dist/server/toolSchemas/analyzeCode.js.map +0 -1
  355. package/dist/server/toolSchemas/batchGetInfo.d.ts.map +0 -1
  356. package/dist/server/toolSchemas/batchGetInfo.js.map +0 -1
  357. package/dist/server/toolSchemas/buildD365foProject.d.ts.map +0 -1
  358. package/dist/server/toolSchemas/buildD365foProject.js.map +0 -1
  359. package/dist/server/toolSchemas/d365foFile.d.ts.map +0 -1
  360. package/dist/server/toolSchemas/d365foFile.js.map +0 -1
  361. package/dist/server/toolSchemas/extensionInfo.d.ts.map +0 -1
  362. package/dist/server/toolSchemas/extensionInfo.js.map +0 -1
  363. package/dist/server/toolSchemas/findReferences.d.ts.map +0 -1
  364. package/dist/server/toolSchemas/findReferences.js.map +0 -1
  365. package/dist/server/toolSchemas/generateObject.d.ts.map +0 -1
  366. package/dist/server/toolSchemas/generateObject.js.map +0 -1
  367. package/dist/server/toolSchemas/getKnowledge.d.ts.map +0 -1
  368. package/dist/server/toolSchemas/getKnowledge.js.map +0 -1
  369. package/dist/server/toolSchemas/getMethod.d.ts.map +0 -1
  370. package/dist/server/toolSchemas/getMethod.js.map +0 -1
  371. package/dist/server/toolSchemas/getObjectInfo.d.ts.map +0 -1
  372. package/dist/server/toolSchemas/getObjectInfo.js.map +0 -1
  373. package/dist/server/toolSchemas/getWorkspaceInfo.d.ts.map +0 -1
  374. package/dist/server/toolSchemas/getWorkspaceInfo.js.map +0 -1
  375. package/dist/server/toolSchemas/index.d.ts.map +0 -1
  376. package/dist/server/toolSchemas/index.js.map +0 -1
  377. package/dist/server/toolSchemas/labels.d.ts.map +0 -1
  378. package/dist/server/toolSchemas/labels.js.map +0 -1
  379. package/dist/server/toolSchemas/objectPatterns.d.ts.map +0 -1
  380. package/dist/server/toolSchemas/objectPatterns.js.map +0 -1
  381. package/dist/server/toolSchemas/prepare.d.ts.map +0 -1
  382. package/dist/server/toolSchemas/prepare.js.map +0 -1
  383. package/dist/server/toolSchemas/reviewWorkspaceChanges.d.ts.map +0 -1
  384. package/dist/server/toolSchemas/reviewWorkspaceChanges.js.map +0 -1
  385. package/dist/server/toolSchemas/runBpCheck.d.ts.map +0 -1
  386. package/dist/server/toolSchemas/runBpCheck.js.map +0 -1
  387. package/dist/server/toolSchemas/runSystestClass.d.ts.map +0 -1
  388. package/dist/server/toolSchemas/runSystestClass.js.map +0 -1
  389. package/dist/server/toolSchemas/search.d.ts.map +0 -1
  390. package/dist/server/toolSchemas/search.js.map +0 -1
  391. package/dist/server/toolSchemas/securityInfo.d.ts.map +0 -1
  392. package/dist/server/toolSchemas/securityInfo.js.map +0 -1
  393. package/dist/server/toolSchemas/suggestEdt.d.ts.map +0 -1
  394. package/dist/server/toolSchemas/suggestEdt.js.map +0 -1
  395. package/dist/server/toolSchemas/triggerDbSync.d.ts.map +0 -1
  396. package/dist/server/toolSchemas/triggerDbSync.js.map +0 -1
  397. package/dist/server/toolSchemas/undoLastModification.d.ts.map +0 -1
  398. package/dist/server/toolSchemas/undoLastModification.js.map +0 -1
  399. package/dist/server/toolSchemas/updateSymbolIndex.d.ts.map +0 -1
  400. package/dist/server/toolSchemas/updateSymbolIndex.js.map +0 -1
  401. package/dist/server/toolSchemas/validateCode.d.ts.map +0 -1
  402. package/dist/server/toolSchemas/validateCode.js.map +0 -1
  403. package/dist/server/toolSchemas/validateObjectNaming.d.ts.map +0 -1
  404. package/dist/server/toolSchemas/validateObjectNaming.js.map +0 -1
  405. package/dist/server/toolSchemas/verifyD365foProject.d.ts.map +0 -1
  406. package/dist/server/toolSchemas/verifyD365foProject.js.map +0 -1
  407. package/dist/server/transport.d.ts.map +0 -1
  408. package/dist/server/transport.js.map +0 -1
  409. package/dist/tools/analyzeCode.d.ts.map +0 -1
  410. package/dist/tools/analyzeCode.js.map +0 -1
  411. package/dist/tools/analyzeCompleteness.d.ts.map +0 -1
  412. package/dist/tools/analyzeCompleteness.js.map +0 -1
  413. package/dist/tools/analyzeExtensionPoints.d.ts.map +0 -1
  414. package/dist/tools/analyzeExtensionPoints.js.map +0 -1
  415. package/dist/tools/analyzePatterns.d.ts.map +0 -1
  416. package/dist/tools/analyzePatterns.js.map +0 -1
  417. package/dist/tools/apiUsagePatterns.d.ts.map +0 -1
  418. package/dist/tools/apiUsagePatterns.js.map +0 -1
  419. package/dist/tools/batchGetInfo.d.ts.map +0 -1
  420. package/dist/tools/batchGetInfo.js.map +0 -1
  421. package/dist/tools/batchSearch.d.ts.map +0 -1
  422. package/dist/tools/batchSearch.js.map +0 -1
  423. package/dist/tools/buildProject.d.ts.map +0 -1
  424. package/dist/tools/buildProject.js.map +0 -1
  425. package/dist/tools/classInfo.d.ts.map +0 -1
  426. package/dist/tools/classInfo.js.map +0 -1
  427. package/dist/tools/codeGen.d.ts.map +0 -1
  428. package/dist/tools/codeGen.js.map +0 -1
  429. package/dist/tools/completion.d.ts.map +0 -1
  430. package/dist/tools/completion.js.map +0 -1
  431. package/dist/tools/configKeyInfo.d.ts.map +0 -1
  432. package/dist/tools/configKeyInfo.js.map +0 -1
  433. package/dist/tools/createD365File.d.ts.map +0 -1
  434. package/dist/tools/createD365File.js.map +0 -1
  435. package/dist/tools/createLabel.d.ts.map +0 -1
  436. package/dist/tools/createLabel.js.map +0 -1
  437. package/dist/tools/d365foErrorHelp.d.ts.map +0 -1
  438. package/dist/tools/d365foErrorHelp.js.map +0 -1
  439. package/dist/tools/d365foFile.d.ts.map +0 -1
  440. package/dist/tools/d365foFile.js.map +0 -1
  441. package/dist/tools/d365foFileOpSpecs.d.ts.map +0 -1
  442. package/dist/tools/d365foFileOpSpecs.js.map +0 -1
  443. package/dist/tools/dataEntityInfo.d.ts.map +0 -1
  444. package/dist/tools/dataEntityInfo.js.map +0 -1
  445. package/dist/tools/dataEntityXml.d.ts.map +0 -1
  446. package/dist/tools/dataEntityXml.js.map +0 -1
  447. package/dist/tools/dbSync.d.ts.map +0 -1
  448. package/dist/tools/dbSync.js.map +0 -1
  449. package/dist/tools/edtInfo.d.ts.map +0 -1
  450. package/dist/tools/edtInfo.js.map +0 -1
  451. package/dist/tools/enumInfo.d.ts.map +0 -1
  452. package/dist/tools/enumInfo.js.map +0 -1
  453. package/dist/tools/extensionInfo.d.ts.map +0 -1
  454. package/dist/tools/extensionInfo.js.map +0 -1
  455. package/dist/tools/extensionSearch.d.ts.map +0 -1
  456. package/dist/tools/extensionSearch.js.map +0 -1
  457. package/dist/tools/extensionStrategyAdvisor.d.ts.map +0 -1
  458. package/dist/tools/extensionStrategyAdvisor.js.map +0 -1
  459. package/dist/tools/findCocExtensions.d.ts.map +0 -1
  460. package/dist/tools/findCocExtensions.js.map +0 -1
  461. package/dist/tools/findEventHandlers.d.ts.map +0 -1
  462. package/dist/tools/findEventHandlers.js.map +0 -1
  463. package/dist/tools/findReferences.d.ts.map +0 -1
  464. package/dist/tools/findReferences.js.map +0 -1
  465. package/dist/tools/formInfo.d.ts.map +0 -1
  466. package/dist/tools/formInfo.js.map +0 -1
  467. package/dist/tools/formPattern.d.ts.map +0 -1
  468. package/dist/tools/formPattern.js.map +0 -1
  469. package/dist/tools/generateD365Xml.d.ts.map +0 -1
  470. package/dist/tools/generateD365Xml.js.map +0 -1
  471. package/dist/tools/generateFindMethods.d.ts.map +0 -1
  472. package/dist/tools/generateFindMethods.js.map +0 -1
  473. package/dist/tools/generateMetadata.d.ts.map +0 -1
  474. package/dist/tools/generateMetadata.js.map +0 -1
  475. package/dist/tools/generateObject.d.ts.map +0 -1
  476. package/dist/tools/generateObject.js.map +0 -1
  477. package/dist/tools/generateRelationXpp.d.ts.map +0 -1
  478. package/dist/tools/generateRelationXpp.js.map +0 -1
  479. package/dist/tools/generateSmart.d.ts.map +0 -1
  480. package/dist/tools/generateSmart.js.map +0 -1
  481. package/dist/tools/generateSmartForm.d.ts.map +0 -1
  482. package/dist/tools/generateSmartForm.js.map +0 -1
  483. package/dist/tools/generateSmartReport.d.ts.map +0 -1
  484. package/dist/tools/generateSmartReport.js.map +0 -1
  485. package/dist/tools/generateSmartTable.d.ts.map +0 -1
  486. package/dist/tools/generateSmartTable.js.map +0 -1
  487. package/dist/tools/generateTableFields.d.ts.map +0 -1
  488. package/dist/tools/generateTableFields.js.map +0 -1
  489. package/dist/tools/generateTableRelation.d.ts.map +0 -1
  490. package/dist/tools/generateTableRelation.js.map +0 -1
  491. package/dist/tools/getFormPatternSpec.d.ts.map +0 -1
  492. package/dist/tools/getFormPatternSpec.js.map +0 -1
  493. package/dist/tools/getFormPatterns.d.ts.map +0 -1
  494. package/dist/tools/getFormPatterns.js.map +0 -1
  495. package/dist/tools/getKnowledge.d.ts.map +0 -1
  496. package/dist/tools/getKnowledge.js.map +0 -1
  497. package/dist/tools/getLabelInfo.d.ts.map +0 -1
  498. package/dist/tools/getLabelInfo.js.map +0 -1
  499. package/dist/tools/getMethod.d.ts.map +0 -1
  500. package/dist/tools/getMethod.js.map +0 -1
  501. package/dist/tools/getMethodSource.d.ts.map +0 -1
  502. package/dist/tools/getMethodSource.js.map +0 -1
  503. package/dist/tools/getObjectInfo.d.ts.map +0 -1
  504. package/dist/tools/getObjectInfo.js.map +0 -1
  505. package/dist/tools/getTablePatterns.d.ts.map +0 -1
  506. package/dist/tools/getTablePatterns.js.map +0 -1
  507. package/dist/tools/index.d.ts.map +0 -1
  508. package/dist/tools/index.js.map +0 -1
  509. package/dist/tools/labels.d.ts.map +0 -1
  510. package/dist/tools/labels.js.map +0 -1
  511. package/dist/tools/macroInfo.d.ts.map +0 -1
  512. package/dist/tools/macroInfo.js.map +0 -1
  513. package/dist/tools/mapInfo.d.ts.map +0 -1
  514. package/dist/tools/mapInfo.js.map +0 -1
  515. package/dist/tools/mapXml.d.ts.map +0 -1
  516. package/dist/tools/mapXml.js.map +0 -1
  517. package/dist/tools/menuItemInfo.d.ts.map +0 -1
  518. package/dist/tools/menuItemInfo.js.map +0 -1
  519. package/dist/tools/methodSignature.d.ts.map +0 -1
  520. package/dist/tools/methodSignature.js.map +0 -1
  521. package/dist/tools/modifyD365File.d.ts.map +0 -1
  522. package/dist/tools/modifyD365File.js.map +0 -1
  523. package/dist/tools/objectInfoRegistry.d.ts.map +0 -1
  524. package/dist/tools/objectInfoRegistry.js.map +0 -1
  525. package/dist/tools/objectPatterns.d.ts.map +0 -1
  526. package/dist/tools/objectPatterns.js.map +0 -1
  527. package/dist/tools/prepare.d.ts.map +0 -1
  528. package/dist/tools/prepare.js.map +0 -1
  529. package/dist/tools/prepareChange.d.ts.map +0 -1
  530. package/dist/tools/prepareChange.js.map +0 -1
  531. package/dist/tools/prepareCreate.d.ts.map +0 -1
  532. package/dist/tools/prepareCreate.js.map +0 -1
  533. package/dist/tools/queryInfo.d.ts.map +0 -1
  534. package/dist/tools/queryInfo.js.map +0 -1
  535. package/dist/tools/queryViewXml.d.ts.map +0 -1
  536. package/dist/tools/queryViewXml.js.map +0 -1
  537. package/dist/tools/renameLabel.d.ts.map +0 -1
  538. package/dist/tools/renameLabel.js.map +0 -1
  539. package/dist/tools/repairFormControls.d.ts.map +0 -1
  540. package/dist/tools/repairFormControls.js.map +0 -1
  541. package/dist/tools/reportInfo.d.ts.map +0 -1
  542. package/dist/tools/reportInfo.js.map +0 -1
  543. package/dist/tools/resolveReferences.d.ts.map +0 -1
  544. package/dist/tools/resolveReferences.js.map +0 -1
  545. package/dist/tools/reviewWorkspaceChanges.d.ts.map +0 -1
  546. package/dist/tools/reviewWorkspaceChanges.js.map +0 -1
  547. package/dist/tools/runBpCheck.d.ts.map +0 -1
  548. package/dist/tools/runBpCheck.js.map +0 -1
  549. package/dist/tools/search.d.ts.map +0 -1
  550. package/dist/tools/search.js.map +0 -1
  551. package/dist/tools/searchLabels.d.ts.map +0 -1
  552. package/dist/tools/searchLabels.js.map +0 -1
  553. package/dist/tools/searchUnified.d.ts.map +0 -1
  554. package/dist/tools/searchUnified.js.map +0 -1
  555. package/dist/tools/securityArtifactInfo.d.ts.map +0 -1
  556. package/dist/tools/securityArtifactInfo.js.map +0 -1
  557. package/dist/tools/securityCoverageInfo.d.ts.map +0 -1
  558. package/dist/tools/securityCoverageInfo.js.map +0 -1
  559. package/dist/tools/securityInfo.d.ts.map +0 -1
  560. package/dist/tools/securityInfo.js.map +0 -1
  561. package/dist/tools/securityPolicyInfo.d.ts.map +0 -1
  562. package/dist/tools/securityPolicyInfo.js.map +0 -1
  563. package/dist/tools/securityPrivilegeXml.d.ts.map +0 -1
  564. package/dist/tools/securityPrivilegeXml.js.map +0 -1
  565. package/dist/tools/serviceInfo.d.ts.map +0 -1
  566. package/dist/tools/serviceInfo.js.map +0 -1
  567. package/dist/tools/suggestEdt.d.ts.map +0 -1
  568. package/dist/tools/suggestEdt.js.map +0 -1
  569. package/dist/tools/suggestImplementation.d.ts.map +0 -1
  570. package/dist/tools/suggestImplementation.js.map +0 -1
  571. package/dist/tools/sysTestRunner.d.ts.map +0 -1
  572. package/dist/tools/sysTestRunner.js.map +0 -1
  573. package/dist/tools/tableExtensionInfo.d.ts.map +0 -1
  574. package/dist/tools/tableExtensionInfo.js.map +0 -1
  575. package/dist/tools/tableInfo.d.ts.map +0 -1
  576. package/dist/tools/tableInfo.js.map +0 -1
  577. package/dist/tools/toolHandler.d.ts.map +0 -1
  578. package/dist/tools/toolHandler.js.map +0 -1
  579. package/dist/tools/undoLastModification.d.ts.map +0 -1
  580. package/dist/tools/undoLastModification.js.map +0 -1
  581. package/dist/tools/updateSymbolIndex.d.ts.map +0 -1
  582. package/dist/tools/updateSymbolIndex.js.map +0 -1
  583. package/dist/tools/validateCode.d.ts.map +0 -1
  584. package/dist/tools/validateCode.js.map +0 -1
  585. package/dist/tools/validateFormPattern.d.ts.map +0 -1
  586. package/dist/tools/validateFormPattern.js.map +0 -1
  587. package/dist/tools/validateObjectNaming.d.ts.map +0 -1
  588. package/dist/tools/validateObjectNaming.js.map +0 -1
  589. package/dist/tools/validateXpp.d.ts.map +0 -1
  590. package/dist/tools/validateXpp.js.map +0 -1
  591. package/dist/tools/verifyD365Project.d.ts.map +0 -1
  592. package/dist/tools/verifyD365Project.js.map +0 -1
  593. package/dist/tools/viewInfo.d.ts.map +0 -1
  594. package/dist/tools/viewInfo.js.map +0 -1
  595. package/dist/tools/xppKnowledge.d.ts.map +0 -1
  596. package/dist/tools/xppKnowledge.js.map +0 -1
  597. package/dist/types/context.d.ts.map +0 -1
  598. package/dist/types/context.js.map +0 -1
  599. package/dist/utils/callDedup.d.ts.map +0 -1
  600. package/dist/utils/callDedup.js.map +0 -1
  601. package/dist/utils/configManager.d.ts.map +0 -1
  602. package/dist/utils/configManager.js.map +0 -1
  603. package/dist/utils/d365XmlNormalizer.d.ts.map +0 -1
  604. package/dist/utils/d365XmlNormalizer.js.map +0 -1
  605. package/dist/utils/edtExtensionValidator.d.ts.map +0 -1
  606. package/dist/utils/edtExtensionValidator.js.map +0 -1
  607. package/dist/utils/eolUtils.d.ts.map +0 -1
  608. package/dist/utils/eolUtils.js.map +0 -1
  609. package/dist/utils/extractManifest.d.ts.map +0 -1
  610. package/dist/utils/extractManifest.js.map +0 -1
  611. package/dist/utils/fieldControlTypes.d.ts.map +0 -1
  612. package/dist/utils/fieldControlTypes.js.map +0 -1
  613. package/dist/utils/formCloner.d.ts.map +0 -1
  614. package/dist/utils/formCloner.js.map +0 -1
  615. package/dist/utils/formControlExpander.d.ts.map +0 -1
  616. package/dist/utils/formControlExpander.js.map +0 -1
  617. package/dist/utils/formControlRepair.d.ts.map +0 -1
  618. package/dist/utils/formControlRepair.js.map +0 -1
  619. package/dist/utils/formExtensionShapeValidator.d.ts.map +0 -1
  620. package/dist/utils/formExtensionShapeValidator.js.map +0 -1
  621. package/dist/utils/formPatternTemplates.d.ts.map +0 -1
  622. package/dist/utils/formPatternTemplates.js.map +0 -1
  623. package/dist/utils/fsExtensionScanner.d.ts.map +0 -1
  624. package/dist/utils/fsExtensionScanner.js.map +0 -1
  625. package/dist/utils/fuzzyMatching.d.ts.map +0 -1
  626. package/dist/utils/fuzzyMatching.js.map +0 -1
  627. package/dist/utils/indexStaleness.d.ts.map +0 -1
  628. package/dist/utils/indexStaleness.js.map +0 -1
  629. package/dist/utils/loadEnv.d.ts.map +0 -1
  630. package/dist/utils/loadEnv.js.map +0 -1
  631. package/dist/utils/logger.d.ts.map +0 -1
  632. package/dist/utils/logger.js.map +0 -1
  633. package/dist/utils/metadataResolver.d.ts.map +0 -1
  634. package/dist/utils/metadataResolver.js.map +0 -1
  635. package/dist/utils/modelClassifier.d.ts.map +0 -1
  636. package/dist/utils/modelClassifier.js.map +0 -1
  637. package/dist/utils/operationLocks.d.ts.map +0 -1
  638. package/dist/utils/operationLocks.js.map +0 -1
  639. package/dist/utils/packageResolver.d.ts.map +0 -1
  640. package/dist/utils/packageResolver.js.map +0 -1
  641. package/dist/utils/pathContainment.d.ts.map +0 -1
  642. package/dist/utils/pathContainment.js.map +0 -1
  643. package/dist/utils/projectUtils.d.ts.map +0 -1
  644. package/dist/utils/projectUtils.js.map +0 -1
  645. package/dist/utils/provenanceStore.d.ts.map +0 -1
  646. package/dist/utils/provenanceStore.js.map +0 -1
  647. package/dist/utils/richContext.d.ts.map +0 -1
  648. package/dist/utils/richContext.js.map +0 -1
  649. package/dist/utils/smartXmlBuilder.d.ts.map +0 -1
  650. package/dist/utils/smartXmlBuilder.js.map +0 -1
  651. package/dist/utils/stdioSessionInfo.d.ts.map +0 -1
  652. package/dist/utils/stdioSessionInfo.js.map +0 -1
  653. package/dist/utils/suggestionEngine.d.ts.map +0 -1
  654. package/dist/utils/suggestionEngine.js.map +0 -1
  655. package/dist/utils/symbolLookup.d.ts.map +0 -1
  656. package/dist/utils/symbolLookup.js.map +0 -1
  657. package/dist/utils/terminalUi.d.ts.map +0 -1
  658. package/dist/utils/terminalUi.js.map +0 -1
  659. package/dist/utils/toolMetrics.d.ts.map +0 -1
  660. package/dist/utils/toolMetrics.js.map +0 -1
  661. package/dist/utils/toolProgressMessage.d.ts.map +0 -1
  662. package/dist/utils/toolProgressMessage.js.map +0 -1
  663. package/dist/utils/workspaceDetector.d.ts.map +0 -1
  664. package/dist/utils/workspaceDetector.js.map +0 -1
  665. package/dist/utils/xppConfigProvider.d.ts.map +0 -1
  666. package/dist/utils/xppConfigProvider.js.map +0 -1
  667. package/dist/utils/xppDocGen.d.ts.map +0 -1
  668. package/dist/utils/xppDocGen.js.map +0 -1
  669. package/dist/utils/xppFormat.d.ts.map +0 -1
  670. package/dist/utils/xppFormat.js.map +0 -1
  671. package/dist/utils/xppSelectLint.d.ts.map +0 -1
  672. package/dist/utils/xppSelectLint.js.map +0 -1
  673. package/dist/validation/formPatternValidator.d.ts.map +0 -1
  674. package/dist/validation/formPatternValidator.js.map +0 -1
  675. package/dist/workspace/contextRanker.d.ts.map +0 -1
  676. package/dist/workspace/contextRanker.js.map +0 -1
  677. package/dist/workspace/contextSnapshot.d.ts.map +0 -1
  678. package/dist/workspace/contextSnapshot.js.map +0 -1
  679. package/dist/workspace/hybridSearch.d.ts.map +0 -1
  680. package/dist/workspace/hybridSearch.js.map +0 -1
  681. package/dist/workspace/workspaceScanner.d.ts.map +0 -1
  682. package/dist/workspace/workspaceScanner.js.map +0 -1
  683. package/dist/workspace/workspaceUtils.d.ts.map +0 -1
  684. package/dist/workspace/workspaceUtils.js.map +0 -1
package/README.md CHANGED
@@ -4,12 +4,13 @@
4
4
 
5
5
  **26 AI tools that know every X++ class, table, form, and EDT in your D365FO codebase**
6
6
 
7
+ [![npm](https://img.shields.io/npm/v/d365fo-mcp.svg?logo=npm&color=cb3837)](https://www.npmjs.com/package/d365fo-mcp)
7
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
9
  [![Node.js](https://img.shields.io/badge/node-%3E%3D24.0.0-brightgreen.svg)](https://nodejs.org/)
9
10
  [![TypeScript](https://img.shields.io/badge/TypeScript-6.0-blue.svg)](https://www.typescriptlang.org/)
10
11
  [![Tests](https://img.shields.io/badge/tests-1400%2B-brightgreen.svg)](docs/TESTING.md)
11
12
  <!-- coverage-badge:start -->
12
- [![Core coverage](https://img.shields.io/badge/core_coverage-79.1%25-yellow.svg)](eval/COVERAGE.md) [![Total coverage](https://img.shields.io/badge/total_coverage-48.1%25-lightgrey.svg)](eval/COVERAGE.md)
13
+ [![Core coverage](https://img.shields.io/badge/core_coverage-100%25-brightgreen.svg)](eval/COVERAGE.md) [![Total coverage](https://img.shields.io/badge/total_coverage-59.7%25-lightgrey.svg)](eval/COVERAGE.md)
13
14
  <!-- coverage-badge:end -->
14
15
 
15
16
  *Grounded AI development for Dynamics 365 Finance & Operations — works with GitHub Copilot and Claude Code*
@@ -18,7 +19,7 @@
18
19
  [![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install_d365fo-24bfa5?style=flat-square&logo=githubcopilot&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=d365fo&quality=insiders&inputs=%5B%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22d365fo_server_url%22%2C%22description%22%3A%22D365FO%20MCP%20server%20URL%20(e.g.%20https%3A%2F%2Fyour-server.azurewebsites.net%2Fmcp%2F)%22%7D%5D&config=%7B%22type%22%3A%22http%22%2C%22url%22%3A%22%24%7Binput%3Ad365fo_server_url%7D%22%7D)
19
20
  [![Add to Cursor](https://img.shields.io/badge/Cursor-Add_d365fo-000000?style=flat-square&logo=cursor&logoColor=white)](https://cursor.com/install-mcp?name=d365fo&config=eyJ1cmwiOiJodHRwczovL3lvdXItc2VydmVyLmF6dXJld2Vic2l0ZXMubmV0L21jcC8ifQ%3D%3D)
20
21
 
21
- *One-click install connects to an already-deployed server — VS Code asks for the URL, Cursor installs a placeholder to edit. Visual Studio & Claude Code: see [Quick Start](#quick-start).*
22
+ *These connect an editor to a server that is already deployed see [Quick Start](#quick-start) if you still need to set one up.*
22
23
 
23
24
  </div>
24
25
 
@@ -73,109 +74,28 @@ Structural violations (wrong order, missing container, disallowed control) **blo
73
74
 
74
75
  ## Quick Start
75
76
 
76
- Pick your path:
77
-
78
- | Path | Who | Install effort |
79
- |------|-----|---------------|
80
- | **A — Azure client** | Team member, server already deployed | `.mcp.json` only — 2 minutes |
81
- | **B — Hybrid** (recommended for teams) | Azure search + local writes on your VM | Clone + build, no indexing |
82
- | **C/E — Local** | Single developer, everything on the VM | Clone + build + index (~15 min) |
83
-
84
- Full walkthrough with all scenarios: **[docs/QUICK_START.md](docs/QUICK_START.md)**
85
-
86
- ### One-line install (recommended)
87
-
88
- Paste into PowerShell on the D365FO VM — the installer checks (and installs, if missing) Node.js and Git, clones the repository, runs `npm install`, and starts the interactive setup wizard:
77
+ **Installing on your own D365FO VM** — the usual case. One line in PowerShell installs Node.js if it is missing, installs the server from npm, and runs the setup wizard, which asks where the index should live and builds the C# bridge for you:
89
78
 
90
79
  ```powershell
91
80
  irm https://raw.githubusercontent.com/dynamics365ninja/d365fo-mcp-server/main/install.ps1 | iex
92
81
  ```
93
82
 
94
- Safe to re-run an existing installation is updated instead of re-cloned. Configure via env vars when needed: `$env:D365FO_MCP_DIR` (install directory), `$env:D365FO_MCP_YES = '1'` (non-interactive), `$env:D365FO_MCP_NO_WIZARD = '1'` (skip the wizard).
95
-
96
- ### Interactive setup
97
-
98
- Already cloned, or prefer to run the steps yourself? After `npm install`, the management CLI walks you through everything else — scenario selection, C# bridge build, configuration, index build — and prints the `.mcp.json` block to paste. Every answer is explained as it is asked and stored in `config/d365fo-mcp.json`; there is no `.env` to fill in (see **[docs/CONFIGURATION.md](docs/CONFIGURATION.md)** for the full setting reference):
99
-
100
- ```powershell
101
- git clone https://github.com/dynamics365ninja/d365fo-mcp-server.git K:\d365fo-mcp-server
102
- cd K:\d365fo-mcp-server
103
- npm install
104
- npm run setup # first-time setup wizard
105
- npm run doctor # health check — verifies Node, build, index, bridge
106
- ```
107
-
108
- Day-to-day management runs through the same CLI (`npx d365fo-mcp` or `npm run cli --`): `start`, `update`, `index`, `config` (change one area of the settings without re-running the wizard), and `instance add/list/run/rebuild/upgrade` for multi-instance setups. Every command works non-interactively with arguments, or asks with predefined choices when run bare.
109
-
110
- ### Manual setup
83
+ Already have Node.js 24+? Then the one-liner has nothing to bootstrap and you can skip it:
111
84
 
112
85
  ```powershell
113
- # Local / hybrid install (on the D365FO VM)
114
- git clone https://github.com/dynamics365ninja/d365fo-mcp-server.git K:\d365fo-mcp-server
115
- cd K:\d365fo-mcp-server
116
- npm install
117
- cd bridge\D365MetadataBridge; dotnet build -c Release; cd ..\.. # C# bridge — required for writes
118
- npm run build
119
-
120
- # Local only — build the metadata index (skip for hybrid)
121
- npm run setup # writes config/d365fo-mcp.json (packages path, models, prefix…)
122
- npm run extract-metadata
123
- npm run build-database
86
+ npm install -g d365fo-mcp
87
+ d365fo-mcp setup
124
88
  ```
125
89
 
126
- > Prefer to write the configuration yourself? `config/d365fo-mcp.json` is plain JSON every key, default and
127
- > matching environment variable is listed in [docs/CONFIGURATION.md](docs/CONFIGURATION.md). A pre-existing
128
- > `.env` keeps working and is imported by the wizard.
129
-
130
- ### Connect GitHub Copilot
131
-
132
- 1. Enable *MCP servers in Copilot* at [github.com/settings/copilot/features](https://github.com/settings/copilot/features)
133
- 2. Visual Studio → **Tools → Options → GitHub → Copilot** → *Enable MCP server integration in agent mode*
134
- 3. Create `%USERPROFILE%\.mcp.json`:
135
-
136
- ```json
137
- {
138
- "servers": {
139
- "d365fo-azure": { "url": "https://your-server.azurewebsites.net/mcp/" },
140
- "d365fo-local": {
141
- "command": "node",
142
- "args": ["K:\\d365fo-mcp-server\\dist\\index.js"],
143
- "env": {
144
- "MCP_SERVER_MODE": "write-only",
145
- "D365FO_SOLUTIONS_PATH": "K:\\repos\\MySolution\\projects",
146
- "D365FO_WORKSPACE_PATH": "K:\\AosService\\PackagesLocalDirectory\\YourPackage\\YourModel"
147
- }
148
- }
149
- }
150
- }
151
- ```
90
+ Re-running either is safe. An installation made before the npm package existed is a git checkout, and both are left exactly where they are and updated in place.
152
91
 
153
- 4. Copy the instruction files into a parent folder of your solutions (one copy covers everything beneath it):
92
+ **Your team already runs a shared server?** Then you install nothing point your editor at it:
154
93
 
155
94
  ```powershell
156
- Copy-Item -Path ".github" -Destination "C:\source\repos\" -Recurse
157
- ```
158
-
159
- All options: **[docs/MCP_CONFIG.md](docs/MCP_CONFIG.md)**
160
-
161
- ### Connect Claude Code
162
-
163
- ```powershell
164
- claude mcp add-json --scope user d365fo-mcp-tools '{"type":"http","url":"https://your-server.azurewebsites.net/mcp/","alwaysLoad":true}'
165
- Copy-Item "K:\d365fo-mcp-server\.github\copilot-instructions.md" "C:\source\repos\CLAUDE.md"
166
- ```
167
-
168
- Stdio variant and troubleshooting: **[docs/CLAUDE_CODE_SETUP.md](docs/CLAUDE_CODE_SETUP.md)**
169
-
170
- ### Verify
171
-
172
- Open the AI chat (Copilot Agent Mode / Claude Code) and ask:
173
-
174
- ```
175
- I'm tracing a posting issue — find every table (standard + ISV extensions) that carries the CustAccount field, so I can see where the value could get overwritten.
95
+ npx d365fo-mcp connect https://your-server.azurewebsites.net
176
96
  ```
177
97
 
178
- A `search` tool call returning results from **your** metadata including your ISV models, which no model's training data has seen — means you're connected.
98
+ Both paths in full prerequisites, editor configuration for every scenario, the required instruction file, and how to verify grounding actually works: **[docs/QUICK_START.md](docs/QUICK_START.md)**
179
99
 
180
100
  ---
181
101
 
@@ -193,7 +113,7 @@ Deployment guide: [docs/SETUP_AZURE.md](docs/SETUP_AZURE.md) · CI/CD automation
193
113
 
194
114
  | Getting started | Reference | Operations |
195
115
  |-----------------|-----------|------------|
196
- | [Quick Start](docs/QUICK_START.md) — 5 steps to running | [All 26 tools](docs/MCP_TOOLS.md) | [Azure deployment](docs/SETUP_AZURE.md) |
116
+ | [Quick Start](docs/QUICK_START.md) — connect or install | [All 26 tools](docs/MCP_TOOLS.md) | [Azure deployment](docs/SETUP_AZURE.md) |
197
117
  | [Setup scenarios A–F](docs/SETUP.md) | [`.mcp.json` reference](docs/MCP_CONFIG.md) | [DevOps pipelines](docs/PIPELINES.md) |
198
118
  | [Claude Code setup](docs/CLAUDE_CODE_SETUP.md) | [Architecture](docs/ARCHITECTURE.md) | [Testing](docs/TESTING.md) |
199
119
  | [Usage examples](docs/USAGE_EXAMPLES.md) — real tool chains | [C# Bridge](docs/BRIDGE.md) | [Custom / ISV models](docs/CUSTOM_EXTENSIONS.md) |
@@ -0,0 +1,116 @@
1
+ <Project Sdk="Microsoft.NET.Sdk">
2
+
3
+ <PropertyGroup>
4
+ <OutputType>Exe</OutputType>
5
+ <TargetFramework>net48</TargetFramework>
6
+ <LangVersion>12.0</LangVersion>
7
+ <Nullable>enable</Nullable>
8
+ <RootNamespace>D365MetadataBridge</RootNamespace>
9
+ <AssemblyName>D365MetadataBridge</AssemblyName>
10
+ <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
11
+ <!-- Resolve transitive assembly version conflicts in D365FO bin (e.g. SCDP 7.0.0 vs 7.0.4) -->
12
+ <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
13
+ <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
14
+ <!-- MSB3277: version conflict between Microsoft-shipped SCDP.dll (7.0.0) and
15
+ SCDPBundling.dll (depends on 7.0.4) in PackagesLocalDirectory\bin.
16
+ We don't control these DLLs and the bridge doesn't use SCDP at all — safe to suppress.
17
+ MSB3106: some D365FO versions ship MetaModel.Core with a version suffix in the filename
18
+ (e.g. Microsoft.Dynamics.Framework.Tools.MetaModel.Core.17.0.dll); the wildcard glob
19
+ picks it up automatically, so the explicit name reference is gone and this warning should
20
+ no longer appear — kept here as a safety net for edge-case environments. -->
21
+ <MSBuildWarningsAsMessages>MSB3277;MSB3106</MSBuildWarningsAsMessages>
22
+ </PropertyGroup>
23
+
24
+ <!--
25
+ D365FO bin directory — contains all Microsoft.Dynamics.*.dll assemblies.
26
+ Every D365FO development desktop has this directory available.
27
+
28
+ Traditional VM: K:\AosService\PackagesLocalDirectory\bin
29
+ Cloud-hosted: C:\AosService\PackagesLocalDirectory\bin
30
+ UDE (Unified Developer Experience): path from .mcp.json microsoftPackagesPath/bin
31
+
32
+ Override per-machine via:
33
+ dotnet build -p:D365BinPath="C:\path\to\bin"
34
+ or in a local Directory.Build.props (not committed to source control).
35
+ -->
36
+ <PropertyGroup>
37
+ <D365BinPath Condition="'$(D365BinPath)' == '' And Exists('K:\AosService\PackagesLocalDirectory\bin')">K:\AosService\PackagesLocalDirectory\bin</D365BinPath>
38
+ <D365BinPath Condition="'$(D365BinPath)' == '' And Exists('C:\AosService\PackagesLocalDirectory\bin')">C:\AosService\PackagesLocalDirectory\bin</D365BinPath>
39
+ </PropertyGroup>
40
+
41
+ <!-- NuGet packages -->
42
+ <ItemGroup>
43
+ <PackageReference Include="System.Text.Json" Version="8.0.5" />
44
+ <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net48" Version="1.0.3">
45
+ <PrivateAssets>all</PrivateAssets>
46
+ <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
47
+ </PackageReference>
48
+ </ItemGroup>
49
+
50
+ <!--
51
+ D365FO assemblies: auto-referenced from $(D365BinPath) via glob.
52
+ At runtime, Program.cs dynamically loads them via AppDomain.AssemblyResolve
53
+ from the - -packages-path argument, so Private=false (don't copy to output).
54
+ -->
55
+ <ItemGroup>
56
+ <Reference Include="Microsoft.CSharp" />
57
+ </ItemGroup>
58
+ <ItemGroup Condition="'$(D365BinPath)' != ''">
59
+ <Reference Include="$(D365BinPath)\Microsoft.Dynamics.*.dll">
60
+ <Private>false</Private>
61
+ </Reference>
62
+ </ItemGroup>
63
+
64
+ <!--
65
+ Record WHICH metamodel build we compiled against, so the bridge can warn at
66
+ startup when it is pointed at an environment shipping a different one.
67
+
68
+ This matters because every platform build stamps the SAME assembly version
69
+ (7.0.0.0) and differs only in FileVersion (e.g. 7.0.7690.155 vs 7.0.7996.33).
70
+ The CLR binder therefore cannot tell them apart, and the AssemblyResolve →
71
+ LoadFrom path in Program.cs does not enforce identity — a mismatched DLL
72
+ loads silently and only blows up later as MissingMethodException /
73
+ TypeLoadException at JIT time, far from the cause. See issue #703.
74
+ -->
75
+ <Target Name="CaptureMetamodelBuildVersion"
76
+ BeforeTargets="BeforeCompile"
77
+ Inputs="$(D365BinPath)\Microsoft.Dynamics.AX.Metadata.dll"
78
+ Outputs="$(IntermediateOutputPath)BuildInfo.g.cs">
79
+ <PropertyGroup>
80
+ <_MetamodelDll>$(D365BinPath)\Microsoft.Dynamics.AX.Metadata.dll</_MetamodelDll>
81
+ </PropertyGroup>
82
+ <GetFileVersion FilePath="$(_MetamodelDll)" Condition="Exists('$(_MetamodelDll)')">
83
+ <Output TaskParameter="Version" PropertyName="_MetamodelFileVersion" />
84
+ </GetFileVersion>
85
+ <Message Importance="high"
86
+ Text="Bridge compiles against metamodel $(_MetamodelFileVersion) from $(D365BinPath)"
87
+ Condition="'$(_MetamodelFileVersion)' != ''" />
88
+ <Warning Text="D365BinPath '$(D365BinPath)' has no Microsoft.Dynamics.AX.Metadata.dll — the runtime version check will be disabled."
89
+ Condition="'$(_MetamodelFileVersion)' == ''" />
90
+ <WriteLinesToFile File="$(IntermediateOutputPath)BuildInfo.g.cs" Overwrite="true" WriteOnlyWhenDifferent="true"
91
+ Lines="// &lt;auto-generated /&gt; Produced by the CaptureMetamodelBuildVersion target.;namespace D365MetadataBridge;{; internal static class BuildInfo; {; /// &lt;summary&gt;FileVersion of the Microsoft.Dynamics.AX.Metadata.dll this build compiled against, or &quot;&quot; if unknown.&lt;/summary&gt;; internal const string MetamodelFileVersion = &quot;$(_MetamodelFileVersion)&quot;%3B; /// &lt;summary&gt;bin directory those reference assemblies came from, or &quot;&quot; if unknown.&lt;/summary&gt;; internal const string MetamodelBinPath = @&quot;$(D365BinPath)&quot;%3B; };}" />
92
+ <ItemGroup>
93
+ <Compile Include="$(IntermediateOutputPath)BuildInfo.g.cs" />
94
+ <FileWrites Include="$(IntermediateOutputPath)BuildInfo.g.cs" />
95
+ </ItemGroup>
96
+ </Target>
97
+
98
+ <!--
99
+ MSBuild has no built-in task for reading a file's FileVersion (GetAssemblyIdentity
100
+ returns the assembly version — 7.0.0.0 for every platform build, which is exactly
101
+ the value that cannot distinguish them).
102
+ -->
103
+ <UsingTask TaskName="GetFileVersion" TaskFactory="RoslynCodeTaskFactory"
104
+ AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll">
105
+ <ParameterGroup>
106
+ <FilePath ParameterType="System.String" Required="true" />
107
+ <Version ParameterType="System.String" Output="true" />
108
+ </ParameterGroup>
109
+ <Task>
110
+ <Code Type="Fragment" Language="cs">
111
+ Version = System.Diagnostics.FileVersionInfo.GetVersionInfo(FilePath).FileVersion ?? "";
112
+ </Code>
113
+ </Task>
114
+ </UsingTask>
115
+
116
+ </Project>