@mxf-dev/core 1.0.1 → 2.0.1

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 (303) hide show
  1. package/README.md +18 -0
  2. package/dist/adapters/FrameworkAdapter.js +1 -1
  3. package/dist/adapters/FrameworkAdapter.js.map +1 -1
  4. package/dist/config/ConfigManager.d.ts +9 -8
  5. package/dist/config/ConfigManager.d.ts.map +1 -1
  6. package/dist/config/ConfigManager.js +47 -17
  7. package/dist/config/ConfigManager.js.map +1 -1
  8. package/dist/config/memory-strata.config.d.ts +25 -0
  9. package/dist/config/memory-strata.config.d.ts.map +1 -0
  10. package/dist/config/memory-strata.config.js +107 -0
  11. package/dist/config/memory-strata.config.js.map +1 -0
  12. package/dist/constants/ToolNames.d.ts +1 -29
  13. package/dist/constants/ToolNames.d.ts.map +1 -1
  14. package/dist/constants/ToolNames.js +4 -17
  15. package/dist/constants/ToolNames.js.map +1 -1
  16. package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
  17. package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
  18. package/dist/database/DatabaseAdapterFactory.js +21 -6
  19. package/dist/database/DatabaseAdapterFactory.js.map +1 -1
  20. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
  21. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
  22. package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
  23. package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
  24. package/dist/events/ClientEventBus.d.ts +16 -77
  25. package/dist/events/ClientEventBus.d.ts.map +1 -1
  26. package/dist/events/ClientEventBus.js +38 -311
  27. package/dist/events/ClientEventBus.js.map +1 -1
  28. package/dist/events/EventBus.d.ts +1 -1
  29. package/dist/events/EventBus.d.ts.map +1 -1
  30. package/dist/events/EventBus.js +5 -4
  31. package/dist/events/EventBus.js.map +1 -1
  32. package/dist/events/EventBusBase.d.ts +139 -34
  33. package/dist/events/EventBusBase.d.ts.map +1 -1
  34. package/dist/events/EventBusBase.js +366 -88
  35. package/dist/events/EventBusBase.js.map +1 -1
  36. package/dist/events/EventNames.d.ts +10 -1
  37. package/dist/events/EventNames.d.ts.map +1 -1
  38. package/dist/events/EventNames.js +3 -0
  39. package/dist/events/EventNames.js.map +1 -1
  40. package/dist/events/PublicEvents.d.ts +6 -2
  41. package/dist/events/PublicEvents.d.ts.map +1 -1
  42. package/dist/events/PublicEvents.js +7 -4
  43. package/dist/events/PublicEvents.js.map +1 -1
  44. package/dist/events/ServerEventBus.d.ts +23 -112
  45. package/dist/events/ServerEventBus.d.ts.map +1 -1
  46. package/dist/events/ServerEventBus.js +58 -323
  47. package/dist/events/ServerEventBus.js.map +1 -1
  48. package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
  49. package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
  50. package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
  51. package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
  52. package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
  53. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
  54. package/dist/interfaces/IMemoryPersistence.js +15 -0
  55. package/dist/interfaces/IMemoryPersistence.js.map +1 -0
  56. package/dist/middleware/MxpMiddleware.d.ts +8 -1
  57. package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
  58. package/dist/middleware/MxpMiddleware.js +42 -20
  59. package/dist/middleware/MxpMiddleware.js.map +1 -1
  60. package/dist/models/channelKey.d.ts +1 -0
  61. package/dist/models/channelKey.d.ts.map +1 -1
  62. package/dist/models/channelKey.js +5 -0
  63. package/dist/models/channelKey.js.map +1 -1
  64. package/dist/models/memoryUtility.d.ts +39 -0
  65. package/dist/models/memoryUtility.d.ts.map +1 -0
  66. package/dist/models/memoryUtility.js +39 -0
  67. package/dist/models/memoryUtility.js.map +1 -0
  68. package/dist/models/user.d.ts.map +1 -1
  69. package/dist/models/user.js +23 -1
  70. package/dist/models/user.js.map +1 -1
  71. package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
  72. package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
  73. package/dist/mxp/BinaryProtocolLayer.js +90 -103
  74. package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
  75. package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
  76. package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
  77. package/dist/mxp/ContextCompressionEngine.js +170 -128
  78. package/dist/mxp/ContextCompressionEngine.js.map +1 -1
  79. package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
  80. package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
  81. package/dist/mxp/MxpTokenOptimizer.js +8 -5
  82. package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
  83. package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
  84. package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
  85. package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
  86. package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
  87. package/dist/protocols/mcp/ToolError.d.ts +123 -0
  88. package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
  89. package/dist/protocols/mcp/ToolError.js +108 -0
  90. package/dist/protocols/mcp/ToolError.js.map +1 -0
  91. package/dist/protocols/mcp/defineTool.d.ts +133 -0
  92. package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
  93. package/dist/protocols/mcp/defineTool.js +236 -0
  94. package/dist/protocols/mcp/defineTool.js.map +1 -0
  95. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
  96. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
  97. package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
  98. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
  99. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
  100. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  101. package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
  102. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  103. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
  104. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
  105. package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
  106. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
  107. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
  108. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  109. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
  110. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  111. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
  112. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  113. package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
  114. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  115. package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
  116. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  117. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  118. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
  119. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  120. package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
  121. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  122. package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
  123. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  124. package/dist/protocols/mcp/tools/GitTools.js +222 -517
  125. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  126. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
  127. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  128. package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
  129. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  130. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
  131. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  132. package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
  133. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  134. package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
  135. package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
  136. package/dist/protocols/mcp/tools/OrparTools.js +66 -0
  137. package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
  138. package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
  139. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  140. package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
  141. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  142. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  143. package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
  144. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  145. package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
  146. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  147. package/dist/protocols/mcp/tools/TestTools.js +241 -363
  148. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  149. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
  150. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  151. package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
  152. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  153. package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
  154. package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
  155. package/dist/protocols/mcp/tools/WebTools.js +151 -257
  156. package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
  157. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
  158. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  159. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
  160. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  161. package/dist/schemas/EventPayloadSchema.d.ts +21 -0
  162. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  163. package/dist/schemas/EventPayloadSchema.js +14 -0
  164. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  165. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  166. package/dist/services/BackgroundTaskManager.js +12 -4
  167. package/dist/services/BackgroundTaskManager.js.map +1 -1
  168. package/dist/services/BrowserManager.d.ts +1 -1
  169. package/dist/services/BrowserManager.d.ts.map +1 -1
  170. package/dist/services/BrowserManager.js +26 -3
  171. package/dist/services/BrowserManager.js.map +1 -1
  172. package/dist/services/MemoryCompressor.d.ts +11 -2
  173. package/dist/services/MemoryCompressor.d.ts.map +1 -1
  174. package/dist/services/MemoryCompressor.js +8 -26
  175. package/dist/services/MemoryCompressor.js.map +1 -1
  176. package/dist/services/MemoryService.d.ts +16 -3
  177. package/dist/services/MemoryService.d.ts.map +1 -1
  178. package/dist/services/MemoryService.js +79 -55
  179. package/dist/services/MemoryService.js.map +1 -1
  180. package/dist/services/MxfMLService.d.ts +5 -0
  181. package/dist/services/MxfMLService.d.ts.map +1 -1
  182. package/dist/services/MxfMLService.js +32 -6
  183. package/dist/services/MxfMLService.js.map +1 -1
  184. package/dist/services/PredictiveAnalyticsService.d.ts +45 -9
  185. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  186. package/dist/services/PredictiveAnalyticsService.js +82 -44
  187. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  188. package/dist/services/QValueManager.d.ts +7 -0
  189. package/dist/services/QValueManager.d.ts.map +1 -1
  190. package/dist/services/QValueManager.js +9 -0
  191. package/dist/services/QValueManager.js.map +1 -1
  192. package/dist/services/RewardSignalProcessor.d.ts +38 -1
  193. package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
  194. package/dist/services/RewardSignalProcessor.js +109 -7
  195. package/dist/services/RewardSignalProcessor.js.map +1 -1
  196. package/dist/services/SharedStateService.d.ts +16 -2
  197. package/dist/services/SharedStateService.d.ts.map +1 -1
  198. package/dist/services/SharedStateService.js +44 -3
  199. package/dist/services/SharedStateService.js.map +1 -1
  200. package/dist/services/TaskEffectivenessService.d.ts +34 -18
  201. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  202. package/dist/services/TaskEffectivenessService.js +91 -155
  203. package/dist/services/TaskEffectivenessService.js.map +1 -1
  204. package/dist/services/WebSearchService.d.ts.map +1 -1
  205. package/dist/services/WebSearchService.js.map +1 -1
  206. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  207. package/dist/services/dag/TaskDagService.js +2 -0
  208. package/dist/services/dag/TaskDagService.js.map +1 -1
  209. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
  210. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  211. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
  212. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  213. package/dist/types/MemoryUtilityTypes.d.ts +2 -0
  214. package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
  215. package/dist/types/MemoryUtilityTypes.js.map +1 -1
  216. package/dist/utils/Logger.d.ts +43 -3
  217. package/dist/utils/Logger.d.ts.map +1 -1
  218. package/dist/utils/Logger.js +78 -36
  219. package/dist/utils/Logger.js.map +1 -1
  220. package/dist/utils/MxpEncryption.d.ts +19 -6
  221. package/dist/utils/MxpEncryption.d.ts.map +1 -1
  222. package/dist/utils/MxpEncryption.js +48 -16
  223. package/dist/utils/MxpEncryption.js.map +1 -1
  224. package/package.json +19 -4
  225. package/src/adapters/FrameworkAdapter.ts +1 -1
  226. package/src/config/ConfigManager.ts +52 -19
  227. package/src/config/memory-strata.config.ts +136 -0
  228. package/src/constants/ToolNames.ts +4 -18
  229. package/src/database/DatabaseAdapterFactory.ts +23 -6
  230. package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
  231. package/src/events/ClientEventBus.ts +68 -403
  232. package/src/events/EventBus.ts +7 -8
  233. package/src/events/EventBusBase.ts +479 -116
  234. package/src/events/EventNames.ts +6 -0
  235. package/src/events/PublicEvents.ts +7 -4
  236. package/src/events/ServerEventBus.ts +78 -473
  237. package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
  238. package/src/interfaces/IMemoryPersistence.ts +51 -0
  239. package/src/middleware/MxpMiddleware.ts +51 -24
  240. package/src/models/channelKey.ts +18 -4
  241. package/src/models/memoryUtility.ts +64 -0
  242. package/src/models/user.ts +36 -4
  243. package/src/mxp/BinaryProtocolLayer.ts +108 -124
  244. package/src/mxp/ContextCompressionEngine.ts +219 -161
  245. package/src/mxp/MxpTokenOptimizer.ts +10 -10
  246. package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
  247. package/src/protocols/mcp/ToolError.ts +201 -0
  248. package/src/protocols/mcp/defineTool.ts +379 -0
  249. package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
  250. package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
  251. package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
  252. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
  253. package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
  254. package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
  255. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
  256. package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
  257. package/src/protocols/mcp/tools/GitTools.ts +290 -569
  258. package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
  259. package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
  260. package/src/protocols/mcp/tools/OrparTools.ts +87 -0
  261. package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
  262. package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
  263. package/src/protocols/mcp/tools/TestTools.ts +339 -419
  264. package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
  265. package/src/protocols/mcp/tools/WebTools.ts +209 -307
  266. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
  267. package/src/schemas/EventPayloadSchema.ts +37 -0
  268. package/src/services/BackgroundTaskManager.ts +12 -4
  269. package/src/services/BrowserManager.ts +41 -1
  270. package/src/services/MemoryCompressor.ts +20 -32
  271. package/src/services/MemoryService.ts +96 -58
  272. package/src/services/MxfMLService.ts +41 -7
  273. package/src/services/PredictiveAnalyticsService.ts +101 -51
  274. package/src/services/QValueManager.ts +10 -0
  275. package/src/services/RewardSignalProcessor.ts +138 -9
  276. package/src/services/SharedStateService.ts +56 -8
  277. package/src/services/TaskEffectivenessService.ts +114 -187
  278. package/src/services/WebSearchService.ts +2 -1
  279. package/src/services/dag/TaskDagService.ts +2 -0
  280. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
  281. package/src/types/MemoryUtilityTypes.ts +2 -0
  282. package/src/utils/Logger.ts +116 -40
  283. package/src/utils/MxpEncryption.ts +69 -34
  284. package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
  285. package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
  286. package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
  287. package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
  288. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
  289. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
  290. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
  291. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
  292. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
  293. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
  294. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
  295. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
  296. package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
  297. package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
  298. package/dist/protocols/mcp/tools/LspTools.js +0 -469
  299. package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
  300. package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
  301. package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
  302. package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
  303. package/src/protocols/mcp/tools/LspTools.ts +0 -476
@@ -1,469 +0,0 @@
1
- /**
2
- * LSP MCP Tools
3
- *
4
- * MCP tools for Language Server Protocol operations.
5
- * Provides code intelligence capabilities to agents.
6
- *
7
- * Feature flag: LSP_ENABLED
8
- */
9
- /**
10
- * LSP tool definitions
11
- *
12
- * These tools expose language server capabilities as MCP tools.
13
- * All tools are disabled by default and require LSP_ENABLED=true.
14
- */
15
- export const lspTools = [
16
- {
17
- name: 'lsp_goto_definition',
18
- description: 'Navigate to the definition of a symbol at a specific location in a source file. Returns precise file path and position.',
19
- inputSchema: {
20
- type: 'object',
21
- properties: {
22
- file: {
23
- type: 'string',
24
- description: 'Absolute path to the source file',
25
- },
26
- line: {
27
- type: 'number',
28
- description: 'Line number (1-indexed)',
29
- },
30
- character: {
31
- type: 'number',
32
- description: 'Character position in the line (1-indexed)',
33
- },
34
- },
35
- required: ['file', 'line', 'character'],
36
- },
37
- examples: [
38
- {
39
- input: {
40
- file: '/project/src/services/UserService.ts',
41
- line: 42,
42
- character: 15,
43
- },
44
- output: {
45
- success: true,
46
- locations: [
47
- {
48
- file: '/project/src/models/User.ts',
49
- line: 10,
50
- character: 14,
51
- endLine: 10,
52
- endCharacter: 25,
53
- },
54
- ],
55
- },
56
- description: 'Find the definition of the symbol at line 42, character 15',
57
- },
58
- ],
59
- metadata: {
60
- category: 'lsp',
61
- requiresFeature: 'lsp',
62
- timeout: 30000,
63
- tags: ['code-navigation', 'semantic-analysis', 'definition'],
64
- },
65
- },
66
- {
67
- name: 'lsp_find_references',
68
- description: 'Find all references to a symbol across the entire project. Useful for impact analysis and refactoring.',
69
- inputSchema: {
70
- type: 'object',
71
- properties: {
72
- file: {
73
- type: 'string',
74
- description: 'Absolute path to the source file',
75
- },
76
- line: {
77
- type: 'number',
78
- description: 'Line number (1-indexed)',
79
- },
80
- character: {
81
- type: 'number',
82
- description: 'Character position in the line (1-indexed)',
83
- },
84
- includeDeclaration: {
85
- type: 'boolean',
86
- description: 'Include the declaration in results (default: true)',
87
- default: true,
88
- },
89
- },
90
- required: ['file', 'line', 'character'],
91
- },
92
- examples: [
93
- {
94
- input: {
95
- file: '/project/src/utils/helpers.ts',
96
- line: 10,
97
- character: 20,
98
- includeDeclaration: true,
99
- },
100
- output: {
101
- success: true,
102
- references: [
103
- {
104
- file: '/project/src/utils/helpers.ts',
105
- line: 10,
106
- character: 20,
107
- },
108
- {
109
- file: '/project/src/services/UserService.ts',
110
- line: 5,
111
- character: 30,
112
- },
113
- ],
114
- totalCount: 2,
115
- },
116
- description: 'Find all usages of the function defined at line 10',
117
- },
118
- ],
119
- metadata: {
120
- category: 'lsp',
121
- requiresFeature: 'lsp',
122
- timeout: 60000,
123
- tags: ['code-navigation', 'refactoring', 'impact-analysis', 'references'],
124
- },
125
- },
126
- {
127
- name: 'lsp_diagnostics',
128
- description: 'Get real-time errors, warnings, and hints for a file. Provides type checking and linting results without running a build.',
129
- inputSchema: {
130
- type: 'object',
131
- properties: {
132
- file: {
133
- type: 'string',
134
- description: 'Absolute path to the source file',
135
- },
136
- severity: {
137
- type: 'string',
138
- enum: ['error', 'warning', 'information', 'hint', 'all'],
139
- description: 'Filter by severity level (default: all)',
140
- default: 'all',
141
- },
142
- },
143
- required: ['file'],
144
- },
145
- examples: [
146
- {
147
- input: {
148
- file: '/project/src/components/Button.tsx',
149
- severity: 'error',
150
- },
151
- output: {
152
- success: true,
153
- diagnostics: [
154
- {
155
- file: '/project/src/components/Button.tsx',
156
- line: 15,
157
- character: 10,
158
- endLine: 15,
159
- endCharacter: 20,
160
- severity: 'error',
161
- message: 'Property "onClick" is missing in type',
162
- code: 2339,
163
- source: 'typescript',
164
- },
165
- ],
166
- counts: {
167
- errors: 1,
168
- warnings: 0,
169
- information: 0,
170
- hints: 0,
171
- },
172
- },
173
- description: 'Get only errors for the Button component',
174
- },
175
- ],
176
- metadata: {
177
- category: 'lsp',
178
- requiresFeature: 'lsp',
179
- timeout: 10000,
180
- tags: ['validation', 'type-checking', 'linting', 'diagnostics'],
181
- },
182
- },
183
- {
184
- name: 'lsp_hover',
185
- description: 'Get type information and documentation for a symbol. Shows the same information as hovering in an IDE.',
186
- inputSchema: {
187
- type: 'object',
188
- properties: {
189
- file: {
190
- type: 'string',
191
- description: 'Absolute path to the source file',
192
- },
193
- line: {
194
- type: 'number',
195
- description: 'Line number (1-indexed)',
196
- },
197
- character: {
198
- type: 'number',
199
- description: 'Character position in the line (1-indexed)',
200
- },
201
- },
202
- required: ['file', 'line', 'character'],
203
- },
204
- examples: [
205
- {
206
- input: {
207
- file: '/project/src/types.ts',
208
- line: 15,
209
- character: 8,
210
- },
211
- output: {
212
- success: true,
213
- contents: '```typescript\ninterface User {\n id: string;\n name: string;\n}\n```\nUser interface representing a system user',
214
- range: {
215
- start: { line: 15, character: 8 },
216
- end: { line: 15, character: 12 },
217
- },
218
- },
219
- description: 'Get type information for the symbol at line 15',
220
- },
221
- ],
222
- metadata: {
223
- category: 'lsp',
224
- requiresFeature: 'lsp',
225
- timeout: 5000,
226
- tags: ['documentation', 'type-information', 'hover'],
227
- },
228
- },
229
- {
230
- name: 'lsp_document_symbols',
231
- description: 'Get the symbol outline for a file (functions, classes, variables). Provides a structural overview of the file.',
232
- inputSchema: {
233
- type: 'object',
234
- properties: {
235
- file: {
236
- type: 'string',
237
- description: 'Absolute path to the source file',
238
- },
239
- },
240
- required: ['file'],
241
- },
242
- examples: [
243
- {
244
- input: {
245
- file: '/project/src/controllers/AuthController.ts',
246
- },
247
- output: {
248
- success: true,
249
- symbols: [
250
- {
251
- name: 'AuthController',
252
- kind: 'class',
253
- location: {
254
- file: '/project/src/controllers/AuthController.ts',
255
- line: 10,
256
- character: 14,
257
- },
258
- children: [
259
- {
260
- name: 'login',
261
- kind: 'method',
262
- location: {
263
- file: '/project/src/controllers/AuthController.ts',
264
- line: 15,
265
- character: 10,
266
- },
267
- },
268
- ],
269
- },
270
- ],
271
- },
272
- description: 'Get all symbols defined in AuthController',
273
- },
274
- ],
275
- metadata: {
276
- category: 'lsp',
277
- requiresFeature: 'lsp',
278
- timeout: 10000,
279
- tags: ['code-navigation', 'documentation', 'symbols', 'outline'],
280
- },
281
- },
282
- {
283
- name: 'lsp_workspace_symbols',
284
- description: 'Search for symbols across the entire workspace. Supports fuzzy matching for quick symbol lookup.',
285
- inputSchema: {
286
- type: 'object',
287
- properties: {
288
- query: {
289
- type: 'string',
290
- description: 'Symbol name query (supports fuzzy matching)',
291
- },
292
- projectRoot: {
293
- type: 'string',
294
- description: 'Project root directory (defaults to current workspace)',
295
- },
296
- limit: {
297
- type: 'number',
298
- description: 'Maximum number of results (default: 100)',
299
- default: 100,
300
- },
301
- },
302
- required: ['query'],
303
- },
304
- examples: [
305
- {
306
- input: {
307
- query: 'UserService',
308
- limit: 50,
309
- },
310
- output: {
311
- success: true,
312
- symbols: [
313
- {
314
- name: 'UserService',
315
- kind: 'class',
316
- location: {
317
- file: '/project/src/services/UserService.ts',
318
- line: 10,
319
- character: 14,
320
- },
321
- containerName: undefined,
322
- },
323
- ],
324
- totalCount: 1,
325
- },
326
- description: 'Find all symbols matching "UserService"',
327
- },
328
- ],
329
- metadata: {
330
- category: 'lsp',
331
- requiresFeature: 'lsp',
332
- timeout: 30000,
333
- tags: ['code-navigation', 'search', 'symbols', 'workspace'],
334
- },
335
- },
336
- {
337
- name: 'lsp_completions',
338
- description: 'Get context-aware code completions at a specific position. Returns available symbols, methods, and properties.',
339
- inputSchema: {
340
- type: 'object',
341
- properties: {
342
- file: {
343
- type: 'string',
344
- description: 'Absolute path to the source file',
345
- },
346
- line: {
347
- type: 'number',
348
- description: 'Line number (1-indexed)',
349
- },
350
- character: {
351
- type: 'number',
352
- description: 'Character position in the line (1-indexed)',
353
- },
354
- triggerCharacter: {
355
- type: 'string',
356
- description: 'Character that triggered completion (e.g., ".", ":")',
357
- maxLength: 1,
358
- },
359
- limit: {
360
- type: 'number',
361
- description: 'Maximum number of completions to return (default: 50)',
362
- default: 50,
363
- },
364
- },
365
- required: ['file', 'line', 'character'],
366
- },
367
- examples: [
368
- {
369
- input: {
370
- file: '/project/src/index.ts',
371
- line: 25,
372
- character: 10,
373
- triggerCharacter: '.',
374
- limit: 20,
375
- },
376
- output: {
377
- success: true,
378
- items: [
379
- {
380
- label: 'toString',
381
- kind: 'method',
382
- detail: '(): string',
383
- insertText: 'toString()',
384
- insertTextFormat: 'plaintext',
385
- },
386
- ],
387
- isIncomplete: false,
388
- },
389
- description: 'Get completions after typing a dot',
390
- },
391
- ],
392
- metadata: {
393
- category: 'lsp',
394
- requiresFeature: 'lsp',
395
- timeout: 5000,
396
- tags: ['code-generation', 'autocomplete', 'completions'],
397
- },
398
- },
399
- {
400
- name: 'lsp_rename',
401
- description: 'Compute all edits required to rename a symbol across the project. Returns preview by default, does not apply changes.',
402
- inputSchema: {
403
- type: 'object',
404
- properties: {
405
- file: {
406
- type: 'string',
407
- description: 'Absolute path to the source file',
408
- },
409
- line: {
410
- type: 'number',
411
- description: 'Line number (1-indexed)',
412
- },
413
- character: {
414
- type: 'number',
415
- description: 'Character position in the line (1-indexed)',
416
- },
417
- newName: {
418
- type: 'string',
419
- description: 'New name for the symbol',
420
- },
421
- preview: {
422
- type: 'boolean',
423
- description: 'Only preview changes, do not apply (default: true)',
424
- default: true,
425
- },
426
- },
427
- required: ['file', 'line', 'character', 'newName'],
428
- },
429
- examples: [
430
- {
431
- input: {
432
- file: '/project/src/services/api.ts',
433
- line: 5,
434
- character: 15,
435
- newName: 'fetchUserData',
436
- preview: true,
437
- },
438
- output: {
439
- success: true,
440
- edits: [
441
- {
442
- file: '/project/src/services/api.ts',
443
- edits: [
444
- {
445
- range: {
446
- start: { line: 5, character: 15 },
447
- end: { line: 5, character: 23 },
448
- },
449
- newText: 'fetchUserData',
450
- },
451
- ],
452
- },
453
- ],
454
- filesAffected: 3,
455
- locationsAffected: 12,
456
- preview: true,
457
- },
458
- description: 'Preview renaming a function to fetchUserData',
459
- },
460
- ],
461
- metadata: {
462
- category: 'lsp',
463
- requiresFeature: 'lsp',
464
- timeout: 60000,
465
- tags: ['refactoring', 'code-modification', 'rename'],
466
- },
467
- },
468
- ];
469
- //# sourceMappingURL=LspTools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LspTools.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/tools/LspTools.ts"],"names":[],"mappings":"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"}