snow-flow 1.1.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 (240) hide show
  1. package/.env.example +49 -0
  2. package/.mcp.json +106 -0
  3. package/.mcp.json.template +106 -0
  4. package/LICENSE +21 -0
  5. package/README.md +236 -0
  6. package/bin/snow-flow +4 -0
  7. package/bin/snow-flow.js +3 -0
  8. package/claude-flow +79 -0
  9. package/claude-flow.bat +18 -0
  10. package/claude-flow.config.json +20 -0
  11. package/claude-flow.ps1 +24 -0
  12. package/dist/agents/app-creator.agent.d.ts +55 -0
  13. package/dist/agents/app-creator.agent.d.ts.map +1 -0
  14. package/dist/agents/app-creator.agent.js +1292 -0
  15. package/dist/agents/app-creator.agent.js.map +1 -0
  16. package/dist/agents/base-snow-agent.d.ts +63 -0
  17. package/dist/agents/base-snow-agent.d.ts.map +1 -0
  18. package/dist/agents/base-snow-agent.js +296 -0
  19. package/dist/agents/base-snow-agent.js.map +1 -0
  20. package/dist/agents/script-generator.agent.d.ts +32 -0
  21. package/dist/agents/script-generator.agent.d.ts.map +1 -0
  22. package/dist/agents/script-generator.agent.js +772 -0
  23. package/dist/agents/script-generator.agent.js.map +1 -0
  24. package/dist/agents/ui-builder.agent.d.ts +50 -0
  25. package/dist/agents/ui-builder.agent.d.ts.map +1 -0
  26. package/dist/agents/ui-builder.agent.js +1539 -0
  27. package/dist/agents/ui-builder.agent.js.map +1 -0
  28. package/dist/agents/widget-builder.agent.d.ts +32 -0
  29. package/dist/agents/widget-builder.agent.d.ts.map +1 -0
  30. package/dist/agents/widget-builder.agent.js +439 -0
  31. package/dist/agents/widget-builder.agent.js.map +1 -0
  32. package/dist/agents/workflow-designer.agent.d.ts +31 -0
  33. package/dist/agents/workflow-designer.agent.d.ts.map +1 -0
  34. package/dist/agents/workflow-designer.agent.js +583 -0
  35. package/dist/agents/workflow-designer.agent.js.map +1 -0
  36. package/dist/api/error-handling.d.ts +214 -0
  37. package/dist/api/error-handling.d.ts.map +1 -0
  38. package/dist/api/error-handling.js +594 -0
  39. package/dist/api/error-handling.js.map +1 -0
  40. package/dist/api/flow-designer-api.d.ts +167 -0
  41. package/dist/api/flow-designer-api.d.ts.map +1 -0
  42. package/dist/api/flow-designer-api.js +555 -0
  43. package/dist/api/flow-designer-api.js.map +1 -0
  44. package/dist/api/natural-language-mapper.d.ts +126 -0
  45. package/dist/api/natural-language-mapper.d.ts.map +1 -0
  46. package/dist/api/natural-language-mapper.js +498 -0
  47. package/dist/api/natural-language-mapper.js.map +1 -0
  48. package/dist/api/performance-optimizer.d.ts +240 -0
  49. package/dist/api/performance-optimizer.d.ts.map +1 -0
  50. package/dist/api/performance-optimizer.js +701 -0
  51. package/dist/api/performance-optimizer.js.map +1 -0
  52. package/dist/api/transaction-manager.d.ts +189 -0
  53. package/dist/api/transaction-manager.d.ts.map +1 -0
  54. package/dist/api/transaction-manager.js +576 -0
  55. package/dist/api/transaction-manager.js.map +1 -0
  56. package/dist/cli/deploy-artifact.d.ts +7 -0
  57. package/dist/cli/deploy-artifact.d.ts.map +1 -0
  58. package/dist/cli/deploy-artifact.js +279 -0
  59. package/dist/cli/deploy-artifact.js.map +1 -0
  60. package/dist/cli.d.ts +6 -0
  61. package/dist/cli.d.ts.map +1 -0
  62. package/dist/cli.js +2057 -0
  63. package/dist/cli.js.map +1 -0
  64. package/dist/index.d.ts +10 -0
  65. package/dist/index.d.ts.map +1 -0
  66. package/dist/index.js +35 -0
  67. package/dist/index.js.map +1 -0
  68. package/dist/managers/scope-manager.d.ts +75 -0
  69. package/dist/managers/scope-manager.d.ts.map +1 -0
  70. package/dist/managers/scope-manager.js +448 -0
  71. package/dist/managers/scope-manager.js.map +1 -0
  72. package/dist/mcp/mcp-wrapper.d.ts +8 -0
  73. package/dist/mcp/mcp-wrapper.d.ts.map +1 -0
  74. package/dist/mcp/mcp-wrapper.js +77 -0
  75. package/dist/mcp/mcp-wrapper.js.map +1 -0
  76. package/dist/mcp/servicenow-automation-mcp.d.ts +8 -0
  77. package/dist/mcp/servicenow-automation-mcp.d.ts.map +1 -0
  78. package/dist/mcp/servicenow-automation-mcp.js +683 -0
  79. package/dist/mcp/servicenow-automation-mcp.js.map +1 -0
  80. package/dist/mcp/servicenow-deployment-mcp.d.ts +7 -0
  81. package/dist/mcp/servicenow-deployment-mcp.d.ts.map +1 -0
  82. package/dist/mcp/servicenow-deployment-mcp.js +972 -0
  83. package/dist/mcp/servicenow-deployment-mcp.js.map +1 -0
  84. package/dist/mcp/servicenow-flow-composer-mcp.d.ts +7 -0
  85. package/dist/mcp/servicenow-flow-composer-mcp.d.ts.map +1 -0
  86. package/dist/mcp/servicenow-flow-composer-mcp.js +1121 -0
  87. package/dist/mcp/servicenow-flow-composer-mcp.js.map +1 -0
  88. package/dist/mcp/servicenow-graph-memory-mcp.d.ts +7 -0
  89. package/dist/mcp/servicenow-graph-memory-mcp.d.ts.map +1 -0
  90. package/dist/mcp/servicenow-graph-memory-mcp.js +703 -0
  91. package/dist/mcp/servicenow-graph-memory-mcp.js.map +1 -0
  92. package/dist/mcp/servicenow-integration-mcp.d.ts +8 -0
  93. package/dist/mcp/servicenow-integration-mcp.d.ts.map +1 -0
  94. package/dist/mcp/servicenow-integration-mcp.js +689 -0
  95. package/dist/mcp/servicenow-integration-mcp.js.map +1 -0
  96. package/dist/mcp/servicenow-intelligent-mcp.d.ts +7 -0
  97. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -0
  98. package/dist/mcp/servicenow-intelligent-mcp.js +1138 -0
  99. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -0
  100. package/dist/mcp/servicenow-mcp-server.d.ts +37 -0
  101. package/dist/mcp/servicenow-mcp-server.d.ts.map +1 -0
  102. package/dist/mcp/servicenow-mcp-server.js +648 -0
  103. package/dist/mcp/servicenow-mcp-server.js.map +1 -0
  104. package/dist/mcp/servicenow-operations-mcp.d.ts +15 -0
  105. package/dist/mcp/servicenow-operations-mcp.d.ts.map +1 -0
  106. package/dist/mcp/servicenow-operations-mcp.js +1287 -0
  107. package/dist/mcp/servicenow-operations-mcp.js.map +1 -0
  108. package/dist/mcp/servicenow-platform-development-mcp.d.ts +8 -0
  109. package/dist/mcp/servicenow-platform-development-mcp.d.ts.map +1 -0
  110. package/dist/mcp/servicenow-platform-development-mcp.js +557 -0
  111. package/dist/mcp/servicenow-platform-development-mcp.js.map +1 -0
  112. package/dist/mcp/servicenow-progressive-indexer.d.ts +79 -0
  113. package/dist/mcp/servicenow-progressive-indexer.d.ts.map +1 -0
  114. package/dist/mcp/servicenow-progressive-indexer.js +320 -0
  115. package/dist/mcp/servicenow-progressive-indexer.js.map +1 -0
  116. package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts +8 -0
  117. package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts.map +1 -0
  118. package/dist/mcp/servicenow-reporting-analytics-mcp.js +888 -0
  119. package/dist/mcp/servicenow-reporting-analytics-mcp.js.map +1 -0
  120. package/dist/mcp/servicenow-security-compliance-mcp.d.ts +8 -0
  121. package/dist/mcp/servicenow-security-compliance-mcp.d.ts.map +1 -0
  122. package/dist/mcp/servicenow-security-compliance-mcp.js +812 -0
  123. package/dist/mcp/servicenow-security-compliance-mcp.js.map +1 -0
  124. package/dist/mcp/servicenow-update-set-mcp.d.ts +7 -0
  125. package/dist/mcp/servicenow-update-set-mcp.d.ts.map +1 -0
  126. package/dist/mcp/servicenow-update-set-mcp.js +599 -0
  127. package/dist/mcp/servicenow-update-set-mcp.js.map +1 -0
  128. package/dist/mcp/start-all-mcp-servers.d.ts +6 -0
  129. package/dist/mcp/start-all-mcp-servers.d.ts.map +1 -0
  130. package/dist/mcp/start-all-mcp-servers.js +65 -0
  131. package/dist/mcp/start-all-mcp-servers.js.map +1 -0
  132. package/dist/mcp/start-servicenow-mcp.d.ts +7 -0
  133. package/dist/mcp/start-servicenow-mcp.d.ts.map +1 -0
  134. package/dist/mcp/start-servicenow-mcp.js +64 -0
  135. package/dist/mcp/start-servicenow-mcp.js.map +1 -0
  136. package/dist/mcp/test-simple-mcp.d.ts +6 -0
  137. package/dist/mcp/test-simple-mcp.d.ts.map +1 -0
  138. package/dist/mcp/test-simple-mcp.js +64 -0
  139. package/dist/mcp/test-simple-mcp.js.map +1 -0
  140. package/dist/orchestrator/flow-composer.d.ts +269 -0
  141. package/dist/orchestrator/flow-composer.d.ts.map +1 -0
  142. package/dist/orchestrator/flow-composer.js +2221 -0
  143. package/dist/orchestrator/flow-composer.js.map +1 -0
  144. package/dist/orchestrator/flow-pattern-templates.d.ts +260 -0
  145. package/dist/orchestrator/flow-pattern-templates.d.ts.map +1 -0
  146. package/dist/orchestrator/flow-pattern-templates.js +906 -0
  147. package/dist/orchestrator/flow-pattern-templates.js.map +1 -0
  148. package/dist/orchestrator/flow-subflow-decision-engine.d.ts +202 -0
  149. package/dist/orchestrator/flow-subflow-decision-engine.d.ts.map +1 -0
  150. package/dist/orchestrator/flow-subflow-decision-engine.js +769 -0
  151. package/dist/orchestrator/flow-subflow-decision-engine.js.map +1 -0
  152. package/dist/orchestrator/flow-validation-engine.d.ts +145 -0
  153. package/dist/orchestrator/flow-validation-engine.d.ts.map +1 -0
  154. package/dist/orchestrator/flow-validation-engine.js +663 -0
  155. package/dist/orchestrator/flow-validation-engine.js.map +1 -0
  156. package/dist/orchestrator/snow-orchestrator.d.ts +49 -0
  157. package/dist/orchestrator/snow-orchestrator.d.ts.map +1 -0
  158. package/dist/orchestrator/snow-orchestrator.js +235 -0
  159. package/dist/orchestrator/snow-orchestrator.js.map +1 -0
  160. package/dist/orchestrator/subflow-creation-handler.d.ts +230 -0
  161. package/dist/orchestrator/subflow-creation-handler.d.ts.map +1 -0
  162. package/dist/orchestrator/subflow-creation-handler.js +791 -0
  163. package/dist/orchestrator/subflow-creation-handler.js.map +1 -0
  164. package/dist/strategies/global-scope-strategy.d.ts +123 -0
  165. package/dist/strategies/global-scope-strategy.d.ts.map +1 -0
  166. package/dist/strategies/global-scope-strategy.js +585 -0
  167. package/dist/strategies/global-scope-strategy.js.map +1 -0
  168. package/dist/types/index.d.ts +138 -0
  169. package/dist/types/index.d.ts.map +1 -0
  170. package/dist/types/index.js +4 -0
  171. package/dist/types/index.js.map +1 -0
  172. package/dist/types/servicenow.types.d.ts +260 -0
  173. package/dist/types/servicenow.types.d.ts.map +1 -0
  174. package/dist/types/servicenow.types.js +3 -0
  175. package/dist/types/servicenow.types.js.map +1 -0
  176. package/dist/types/snow-flow.types.d.ts +114 -0
  177. package/dist/types/snow-flow.types.d.ts.map +1 -0
  178. package/dist/types/snow-flow.types.js +3 -0
  179. package/dist/types/snow-flow.types.js.map +1 -0
  180. package/dist/utils/action-type-cache.d.ts +66 -0
  181. package/dist/utils/action-type-cache.d.ts.map +1 -0
  182. package/dist/utils/action-type-cache.js +237 -0
  183. package/dist/utils/action-type-cache.js.map +1 -0
  184. package/dist/utils/agent-detector.d.ts +35 -0
  185. package/dist/utils/agent-detector.d.ts.map +1 -0
  186. package/dist/utils/agent-detector.js +353 -0
  187. package/dist/utils/agent-detector.js.map +1 -0
  188. package/dist/utils/flow-api-discovery.d.ts +151 -0
  189. package/dist/utils/flow-api-discovery.d.ts.map +1 -0
  190. package/dist/utils/flow-api-discovery.js +440 -0
  191. package/dist/utils/flow-api-discovery.js.map +1 -0
  192. package/dist/utils/flow-xml-generator.d.ts +41 -0
  193. package/dist/utils/flow-xml-generator.d.ts.map +1 -0
  194. package/dist/utils/flow-xml-generator.js +258 -0
  195. package/dist/utils/flow-xml-generator.js.map +1 -0
  196. package/dist/utils/logger.d.ts +13 -0
  197. package/dist/utils/logger.d.ts.map +1 -0
  198. package/dist/utils/logger.js +51 -0
  199. package/dist/utils/logger.js.map +1 -0
  200. package/dist/utils/mcp-auth-middleware.d.ts +58 -0
  201. package/dist/utils/mcp-auth-middleware.d.ts.map +1 -0
  202. package/dist/utils/mcp-auth-middleware.js +227 -0
  203. package/dist/utils/mcp-auth-middleware.js.map +1 -0
  204. package/dist/utils/mcp-config-manager.d.ts +126 -0
  205. package/dist/utils/mcp-config-manager.d.ts.map +1 -0
  206. package/dist/utils/mcp-config-manager.js +209 -0
  207. package/dist/utils/mcp-config-manager.js.map +1 -0
  208. package/dist/utils/mcp-server-manager.d.ts +91 -0
  209. package/dist/utils/mcp-server-manager.d.ts.map +1 -0
  210. package/dist/utils/mcp-server-manager.js +338 -0
  211. package/dist/utils/mcp-server-manager.js.map +1 -0
  212. package/dist/utils/scope-utils.d.ts +72 -0
  213. package/dist/utils/scope-utils.d.ts.map +1 -0
  214. package/dist/utils/scope-utils.js +386 -0
  215. package/dist/utils/scope-utils.js.map +1 -0
  216. package/dist/utils/servicenow-client.d.ts +233 -0
  217. package/dist/utils/servicenow-client.d.ts.map +1 -0
  218. package/dist/utils/servicenow-client.js +1465 -0
  219. package/dist/utils/servicenow-client.js.map +1 -0
  220. package/dist/utils/snow-oauth-old.d.ts +65 -0
  221. package/dist/utils/snow-oauth-old.d.ts.map +1 -0
  222. package/dist/utils/snow-oauth-old.js +345 -0
  223. package/dist/utils/snow-oauth-old.js.map +1 -0
  224. package/dist/utils/snow-oauth.d.ts +85 -0
  225. package/dist/utils/snow-oauth.d.ts.map +1 -0
  226. package/dist/utils/snow-oauth.js +512 -0
  227. package/dist/utils/snow-oauth.js.map +1 -0
  228. package/dist/utils/template-engine.d.ts +76 -0
  229. package/dist/utils/template-engine.d.ts.map +1 -0
  230. package/dist/utils/template-engine.js +391 -0
  231. package/dist/utils/template-engine.js.map +1 -0
  232. package/dist/version.d.ts +35 -0
  233. package/dist/version.d.ts.map +1 -0
  234. package/dist/version.js +72 -0
  235. package/dist/version.js.map +1 -0
  236. package/mcp-wrapper.sh +12 -0
  237. package/package.json +77 -0
  238. package/reports/swarm-auto-centralized-1752649029776.json +13 -0
  239. package/scripts/postinstall.js +30 -0
  240. package/scripts/setup-mcp.js +89 -0
@@ -0,0 +1,79 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Progressive Indexing Strategy for ServiceNow Artifacts
4
+ * Prevents overwhelming the system with too much data
5
+ */
6
+ export interface IndexingStrategy {
7
+ mode: 'lazy' | 'eager' | 'progressive' | 'context-aware';
8
+ maxInitialArtifacts: number;
9
+ relevanceThreshold: number;
10
+ contextWindow: number;
11
+ }
12
+ export interface ArtifactRelevance {
13
+ artifact_id: string;
14
+ relevance_score: number;
15
+ last_accessed: Date;
16
+ access_count: number;
17
+ related_to_current_task: boolean;
18
+ }
19
+ export declare class ServiceNowProgressiveIndexer {
20
+ private logger;
21
+ private client;
22
+ private indexedArtifacts;
23
+ private relevanceMap;
24
+ private currentContext;
25
+ constructor();
26
+ /**
27
+ * Smart indexing based on current task context
28
+ */
29
+ indexForContext(context: string, userInstruction: string): Promise<any>;
30
+ /**
31
+ * Extract key concepts from natural language
32
+ */
33
+ private extractConcepts;
34
+ /**
35
+ * Determine which artifact types are relevant
36
+ */
37
+ private determineRelevantTypes;
38
+ /**
39
+ * Find artifacts relevant to concepts
40
+ */
41
+ private findRelevantArtifacts;
42
+ /**
43
+ * Calculate relevance score
44
+ */
45
+ private calculateRelevance;
46
+ /**
47
+ * Search artifacts by type
48
+ */
49
+ private searchArtifactsByType;
50
+ /**
51
+ * Index artifacts immediately
52
+ */
53
+ private indexArtifacts;
54
+ /**
55
+ * Schedule lazy indexing
56
+ */
57
+ private scheduleLazyIndexing;
58
+ /**
59
+ * Index artifact in Neo4j graph
60
+ */
61
+ private indexInGraph;
62
+ /**
63
+ * Update relevance tracking
64
+ */
65
+ private updateRelevance;
66
+ /**
67
+ * Get indexing strategy based on context
68
+ */
69
+ private getIndexingStrategy;
70
+ /**
71
+ * Clean up old irrelevant artifacts
72
+ */
73
+ cleanupIrrelevantArtifacts(): Promise<number>;
74
+ /**
75
+ * Get indexing statistics
76
+ */
77
+ getIndexingStats(): any;
78
+ }
79
+ //# sourceMappingURL=servicenow-progressive-indexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicenow-progressive-indexer.d.ts","sourceRoot":"","sources":["../../src/mcp/servicenow-progressive-indexer.ts"],"names":[],"mappings":";AACA;;;GAGG;AAKH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,eAAe,CAAC;IACzD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAED,qBAAa,4BAA4B;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,YAAY,CAA6C;IACjE,OAAO,CAAC,cAAc,CAAc;;IAOpC;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkC7E;;OAEG;IACH,OAAO,CAAC,eAAe;IAyBvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;YACW,qBAAqB;IAoCnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;YACW,qBAAqB;IAwBnC;;OAEG;YACW,cAAc;IAe5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;YACW,YAAY;IAM1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACG,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBnD;;OAEG;IACH,gBAAgB,IAAI,GAAG;CAoBxB"}
@@ -0,0 +1,320 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * Progressive Indexing Strategy for ServiceNow Artifacts
5
+ * Prevents overwhelming the system with too much data
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ServiceNowProgressiveIndexer = void 0;
9
+ const servicenow_client_js_1 = require("../utils/servicenow-client.js");
10
+ const logger_js_1 = require("../utils/logger.js");
11
+ class ServiceNowProgressiveIndexer {
12
+ constructor() {
13
+ this.indexedArtifacts = new Set();
14
+ this.relevanceMap = new Map();
15
+ this.currentContext = '';
16
+ this.logger = new logger_js_1.Logger('ProgressiveIndexer');
17
+ this.client = new servicenow_client_js_1.ServiceNowClient();
18
+ }
19
+ /**
20
+ * Smart indexing based on current task context
21
+ */
22
+ async indexForContext(context, userInstruction) {
23
+ this.currentContext = context;
24
+ this.logger.info('Progressive indexing for context', { context, instruction: userInstruction });
25
+ // Step 1: Extract key concepts from instruction
26
+ const concepts = this.extractConcepts(userInstruction);
27
+ // Step 2: Find most relevant artifacts (not everything!)
28
+ const relevantArtifacts = await this.findRelevantArtifacts(concepts, {
29
+ limit: 10, // Start with just 10 most relevant
30
+ types: this.determineRelevantTypes(userInstruction)
31
+ });
32
+ // Step 3: Index only what's needed
33
+ const indexingPlan = {
34
+ immediate: relevantArtifacts.filter(a => a.relevance > 0.8),
35
+ lazy: relevantArtifacts.filter(a => a.relevance > 0.5 && a.relevance <= 0.8),
36
+ skip: relevantArtifacts.filter(a => a.relevance <= 0.5)
37
+ };
38
+ // Step 4: Progressive indexing
39
+ await this.indexArtifacts(indexingPlan.immediate, 'immediate');
40
+ // Lazy load others as needed
41
+ this.scheduleLazyIndexing(indexingPlan.lazy);
42
+ return {
43
+ indexed_immediately: indexingPlan.immediate.length,
44
+ scheduled_for_lazy: indexingPlan.lazy.length,
45
+ skipped: indexingPlan.skip.length,
46
+ strategy: this.getIndexingStrategy(concepts)
47
+ };
48
+ }
49
+ /**
50
+ * Extract key concepts from natural language
51
+ */
52
+ extractConcepts(instruction) {
53
+ const concepts = [];
54
+ const lower = instruction.toLowerCase();
55
+ // Common ServiceNow concepts
56
+ const conceptMap = {
57
+ 'incident': ['incident', 'ticket', 'issue', 'problem'],
58
+ 'widget': ['widget', 'ui', 'dashboard', 'interface', 'component'],
59
+ 'flow': ['flow', 'workflow', 'automation', 'process'],
60
+ 'approval': ['approval', 'approve', 'goedkeuring', 'review'],
61
+ 'script': ['script', 'code', 'function', 'api'],
62
+ 'table': ['table', 'data', 'record', 'database'],
63
+ 'integration': ['integration', 'connect', 'api', 'external'],
64
+ 'notification': ['notification', 'email', 'alert', 'message']
65
+ };
66
+ for (const [concept, keywords] of Object.entries(conceptMap)) {
67
+ if (keywords.some(keyword => lower.includes(keyword))) {
68
+ concepts.push(concept);
69
+ }
70
+ }
71
+ return concepts;
72
+ }
73
+ /**
74
+ * Determine which artifact types are relevant
75
+ */
76
+ determineRelevantTypes(instruction) {
77
+ const types = [];
78
+ const lower = instruction.toLowerCase();
79
+ if (lower.includes('widget') || lower.includes('dashboard') || lower.includes('ui')) {
80
+ types.push('widget', 'client_script', 'ui_script');
81
+ }
82
+ if (lower.includes('flow') || lower.includes('workflow') || lower.includes('automation')) {
83
+ types.push('flow', 'script_include', 'business_rule');
84
+ }
85
+ if (lower.includes('script') || lower.includes('api') || lower.includes('function')) {
86
+ types.push('script_include', 'business_rule');
87
+ }
88
+ if (lower.includes('table') || lower.includes('data') || lower.includes('record')) {
89
+ types.push('table', 'business_rule');
90
+ }
91
+ // Default to common types if nothing specific found
92
+ if (types.length === 0) {
93
+ types.push('widget', 'flow', 'script_include');
94
+ }
95
+ return [...new Set(types)]; // Remove duplicates
96
+ }
97
+ /**
98
+ * Find artifacts relevant to concepts
99
+ */
100
+ async findRelevantArtifacts(concepts, options) {
101
+ const artifacts = [];
102
+ // Build smart query based on concepts
103
+ const searchQueries = concepts.map(concept => {
104
+ switch (concept) {
105
+ case 'incident':
106
+ return 'nameLIKEincident^ORdescriptionLIKEincident^ORtableLIKEincident';
107
+ case 'widget':
108
+ return 'sys_class_name=sp_widget^ORcategoryLIKEdashboard';
109
+ case 'flow':
110
+ return 'sys_class_name=sys_hub_flow^ORnameLIKEflow^ORnameLIKEworkflow';
111
+ case 'approval':
112
+ return 'nameLIKEapproval^ORdescriptionLIKEapproval^ORscriptLIKEapproval';
113
+ default:
114
+ return `nameLIKE${concept}^ORdescriptionLIKE${concept}`;
115
+ }
116
+ });
117
+ // Search each type with relevance scoring
118
+ for (const type of options.types) {
119
+ const results = await this.searchArtifactsByType(type, searchQueries, options.limit);
120
+ // Score each result
121
+ results.forEach((artifact) => {
122
+ artifact.relevance = this.calculateRelevance(artifact, concepts);
123
+ artifacts.push(artifact);
124
+ });
125
+ }
126
+ // Sort by relevance and limit
127
+ return artifacts
128
+ .sort((a, b) => b.relevance - a.relevance)
129
+ .slice(0, options.limit);
130
+ }
131
+ /**
132
+ * Calculate relevance score
133
+ */
134
+ calculateRelevance(artifact, concepts) {
135
+ let score = 0;
136
+ const name = (artifact.name || '').toLowerCase();
137
+ const description = (artifact.description || '').toLowerCase();
138
+ const content = (artifact.script || artifact.template || '').toLowerCase();
139
+ // Name matches are most important
140
+ concepts.forEach(concept => {
141
+ if (name.includes(concept))
142
+ score += 0.4;
143
+ if (description.includes(concept))
144
+ score += 0.2;
145
+ if (content.includes(concept))
146
+ score += 0.1;
147
+ });
148
+ // Recent artifacts are more relevant
149
+ const lastUpdated = new Date(artifact.sys_updated_on || artifact.sys_created_on);
150
+ const daysSinceUpdate = (Date.now() - lastUpdated.getTime()) / (1000 * 60 * 60 * 24);
151
+ if (daysSinceUpdate < 7)
152
+ score += 0.2;
153
+ else if (daysSinceUpdate < 30)
154
+ score += 0.1;
155
+ // Popular artifacts (based on past usage)
156
+ const relevance = this.relevanceMap.get(artifact.sys_id);
157
+ if (relevance) {
158
+ score += Math.min(relevance.access_count * 0.05, 0.2);
159
+ }
160
+ return Math.min(score, 1.0);
161
+ }
162
+ /**
163
+ * Search artifacts by type
164
+ */
165
+ async searchArtifactsByType(type, queries, limit) {
166
+ const tableMap = {
167
+ 'widget': 'sp_widget',
168
+ 'flow': 'sys_hub_flow',
169
+ 'script_include': 'sys_script_include',
170
+ 'business_rule': 'sys_script',
171
+ 'table': 'sys_db_object',
172
+ 'client_script': 'sys_ui_script',
173
+ 'ui_script': 'sys_ui_script'
174
+ };
175
+ const table = tableMap[type];
176
+ if (!table)
177
+ return [];
178
+ try {
179
+ const query = queries.join('^OR');
180
+ const response = await this.client.searchRecords(table, query, limit);
181
+ return response.success ? response.data.result : [];
182
+ }
183
+ catch (error) {
184
+ this.logger.error(`Failed to search ${type}`, error);
185
+ return [];
186
+ }
187
+ }
188
+ /**
189
+ * Index artifacts immediately
190
+ */
191
+ async indexArtifacts(artifacts, priority) {
192
+ this.logger.info(`Indexing ${artifacts.length} artifacts with ${priority} priority`);
193
+ for (const artifact of artifacts) {
194
+ if (!this.indexedArtifacts.has(artifact.sys_id)) {
195
+ // Index in Neo4j
196
+ await this.indexInGraph(artifact);
197
+ // Track indexing
198
+ this.indexedArtifacts.add(artifact.sys_id);
199
+ this.updateRelevance(artifact.sys_id, artifact.relevance);
200
+ }
201
+ }
202
+ }
203
+ /**
204
+ * Schedule lazy indexing
205
+ */
206
+ scheduleLazyIndexing(artifacts) {
207
+ // Index these when Claude actually needs them
208
+ artifacts.forEach(artifact => {
209
+ this.relevanceMap.set(artifact.sys_id, {
210
+ artifact_id: artifact.sys_id,
211
+ relevance_score: artifact.relevance,
212
+ last_accessed: new Date(),
213
+ access_count: 0,
214
+ related_to_current_task: true
215
+ });
216
+ });
217
+ }
218
+ /**
219
+ * Index artifact in Neo4j graph
220
+ */
221
+ async indexInGraph(artifact) {
222
+ // This would call the Neo4j MCP
223
+ this.logger.info(`Indexing ${artifact.name} in graph database`);
224
+ // Implementation would use snow_graph_index_artifact
225
+ }
226
+ /**
227
+ * Update relevance tracking
228
+ */
229
+ updateRelevance(artifactId, score) {
230
+ const existing = this.relevanceMap.get(artifactId);
231
+ if (existing) {
232
+ existing.relevance_score = score;
233
+ existing.last_accessed = new Date();
234
+ existing.access_count++;
235
+ }
236
+ else {
237
+ this.relevanceMap.set(artifactId, {
238
+ artifact_id: artifactId,
239
+ relevance_score: score,
240
+ last_accessed: new Date(),
241
+ access_count: 1,
242
+ related_to_current_task: true
243
+ });
244
+ }
245
+ }
246
+ /**
247
+ * Get indexing strategy based on context
248
+ */
249
+ getIndexingStrategy(concepts) {
250
+ // Simple tasks need less indexing
251
+ if (concepts.length <= 2) {
252
+ return {
253
+ mode: 'lazy',
254
+ maxInitialArtifacts: 5,
255
+ relevanceThreshold: 0.8,
256
+ contextWindow: 10
257
+ };
258
+ }
259
+ // Complex tasks need more context
260
+ if (concepts.length > 5) {
261
+ return {
262
+ mode: 'eager',
263
+ maxInitialArtifacts: 20,
264
+ relevanceThreshold: 0.5,
265
+ contextWindow: 50
266
+ };
267
+ }
268
+ // Default progressive strategy
269
+ return {
270
+ mode: 'progressive',
271
+ maxInitialArtifacts: 10,
272
+ relevanceThreshold: 0.7,
273
+ contextWindow: 25
274
+ };
275
+ }
276
+ /**
277
+ * Clean up old irrelevant artifacts
278
+ */
279
+ async cleanupIrrelevantArtifacts() {
280
+ const thirtyDaysAgo = new Date(Date.now() - 30 * 24 * 60 * 60 * 1000);
281
+ let cleaned = 0;
282
+ for (const [id, relevance] of this.relevanceMap.entries()) {
283
+ if (relevance.last_accessed < thirtyDaysAgo &&
284
+ relevance.access_count < 2 &&
285
+ relevance.relevance_score < 0.5) {
286
+ this.relevanceMap.delete(id);
287
+ this.indexedArtifacts.delete(id);
288
+ cleaned++;
289
+ }
290
+ }
291
+ this.logger.info(`Cleaned up ${cleaned} irrelevant artifacts`);
292
+ return cleaned;
293
+ }
294
+ /**
295
+ * Get indexing statistics
296
+ */
297
+ getIndexingStats() {
298
+ const stats = {
299
+ total_indexed: this.indexedArtifacts.size,
300
+ total_tracked: this.relevanceMap.size,
301
+ current_context: this.currentContext,
302
+ relevance_distribution: {
303
+ high: 0,
304
+ medium: 0,
305
+ low: 0
306
+ }
307
+ };
308
+ for (const relevance of this.relevanceMap.values()) {
309
+ if (relevance.relevance_score > 0.8)
310
+ stats.relevance_distribution.high++;
311
+ else if (relevance.relevance_score > 0.5)
312
+ stats.relevance_distribution.medium++;
313
+ else
314
+ stats.relevance_distribution.low++;
315
+ }
316
+ return stats;
317
+ }
318
+ }
319
+ exports.ServiceNowProgressiveIndexer = ServiceNowProgressiveIndexer;
320
+ //# sourceMappingURL=servicenow-progressive-indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicenow-progressive-indexer.js","sourceRoot":"","sources":["../../src/mcp/servicenow-progressive-indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * ServiceNow Reporting & Analytics MCP Server
4
+ * Handles reports, dashboards, and analytics operations
5
+ * NO HARDCODED VALUES - All reporting configurations discovered dynamically
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=servicenow-reporting-analytics-mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicenow-reporting-analytics-mcp.d.ts","sourceRoot":"","sources":["../../src/mcp/servicenow-reporting-analytics-mcp.ts"],"names":[],"mappings":";AACA;;;;GAIG"}