snow-flow 1.1.76 → 1.1.78

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 (234) hide show
  1. package/.claude-flow/queen/queen-memory.db +0 -0
  2. package/CLAUDE.md +34 -5
  3. package/README.md +256 -384
  4. package/dist/agents/base-agent.d.ts +92 -0
  5. package/dist/agents/base-agent.d.ts.map +1 -0
  6. package/dist/agents/base-agent.js +228 -0
  7. package/dist/agents/base-agent.js.map +1 -0
  8. package/dist/agents/coordinator.d.ts +200 -0
  9. package/dist/agents/coordinator.d.ts.map +1 -0
  10. package/dist/agents/coordinator.js +775 -0
  11. package/dist/agents/coordinator.js.map +1 -0
  12. package/dist/agents/flow-builder-agent.d.ts +18 -0
  13. package/dist/agents/flow-builder-agent.d.ts.map +1 -0
  14. package/dist/agents/flow-builder-agent.js +536 -0
  15. package/dist/agents/flow-builder-agent.js.map +1 -0
  16. package/dist/agents/index.d.ts +18 -0
  17. package/dist/agents/index.d.ts.map +1 -0
  18. package/dist/agents/index.js +61 -0
  19. package/dist/agents/index.js.map +1 -0
  20. package/dist/agents/queen-agent-example.d.ts +23 -0
  21. package/dist/agents/queen-agent-example.d.ts.map +1 -0
  22. package/dist/agents/queen-agent-example.js +241 -0
  23. package/dist/agents/queen-agent-example.js.map +1 -0
  24. package/dist/agents/queen-agent.d.ts +180 -0
  25. package/dist/agents/queen-agent.d.ts.map +1 -0
  26. package/dist/agents/queen-agent.js +909 -0
  27. package/dist/agents/queen-agent.js.map +1 -0
  28. package/dist/agents/queen-agent.test.d.ts +6 -0
  29. package/dist/agents/queen-agent.test.d.ts.map +1 -0
  30. package/dist/agents/queen-agent.test.js.map +1 -0
  31. package/dist/agents/script-writer-agent.d.ts +22 -0
  32. package/dist/agents/script-writer-agent.d.ts.map +1 -0
  33. package/dist/agents/script-writer-agent.js +695 -0
  34. package/dist/agents/script-writer-agent.js.map +1 -0
  35. package/dist/agents/security-agent.d.ts +23 -0
  36. package/dist/agents/security-agent.d.ts.map +1 -0
  37. package/dist/agents/security-agent.js +619 -0
  38. package/dist/agents/security-agent.js.map +1 -0
  39. package/dist/agents/test-agent.d.ts +26 -0
  40. package/dist/agents/test-agent.d.ts.map +1 -0
  41. package/dist/agents/test-agent.js +735 -0
  42. package/dist/agents/test-agent.js.map +1 -0
  43. package/dist/agents/test-agents.d.ts +7 -0
  44. package/dist/agents/test-agents.d.ts.map +1 -0
  45. package/dist/agents/test-agents.js +65 -0
  46. package/dist/agents/test-agents.js.map +1 -0
  47. package/dist/agents/widget-creator-agent.d.ts +18 -0
  48. package/dist/agents/widget-creator-agent.d.ts.map +1 -0
  49. package/dist/agents/widget-creator-agent.js +440 -0
  50. package/dist/agents/widget-creator-agent.js.map +1 -0
  51. package/dist/cli/snow-flow-cli-integration.d.ts +30 -0
  52. package/dist/cli/snow-flow-cli-integration.d.ts.map +1 -0
  53. package/dist/cli/snow-flow-cli-integration.js +385 -0
  54. package/dist/cli/snow-flow-cli-integration.js.map +1 -0
  55. package/dist/cli.js +466 -150
  56. package/dist/cli.js.map +1 -1
  57. package/dist/config/snow-flow-config.d.ts +1454 -0
  58. package/dist/config/snow-flow-config.d.ts.map +1 -0
  59. package/dist/config/snow-flow-config.js +403 -0
  60. package/dist/config/snow-flow-config.js.map +1 -0
  61. package/dist/health/system-health.d.ts +123 -0
  62. package/dist/health/system-health.d.ts.map +1 -0
  63. package/dist/health/system-health.js +580 -0
  64. package/dist/health/system-health.js.map +1 -0
  65. package/dist/index.d.ts +12 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +19 -3
  68. package/dist/index.js.map +1 -1
  69. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts +58 -0
  70. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts.map +1 -0
  71. package/dist/mcp/servicenow-deployment-mcp-refactored.js +651 -0
  72. package/dist/mcp/servicenow-deployment-mcp-refactored.js.map +1 -0
  73. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts +43 -0
  74. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts.map +1 -0
  75. package/dist/mcp/servicenow-intelligent-mcp-refactored.js +576 -0
  76. package/dist/mcp/servicenow-intelligent-mcp-refactored.js.map +1 -0
  77. package/dist/mcp/servicenow-intelligent-mcp.d.ts +102 -1
  78. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -1
  79. package/dist/mcp/servicenow-intelligent-mcp.js +2 -0
  80. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
  81. package/dist/mcp/shared/agent-context-provider.d.ts +77 -0
  82. package/dist/mcp/shared/agent-context-provider.d.ts.map +1 -0
  83. package/dist/mcp/shared/agent-context-provider.js +292 -0
  84. package/dist/mcp/shared/agent-context-provider.js.map +1 -0
  85. package/dist/mcp/shared/base-mcp-server.d.ts +97 -0
  86. package/dist/mcp/shared/base-mcp-server.d.ts.map +1 -0
  87. package/dist/mcp/shared/base-mcp-server.js +216 -0
  88. package/dist/mcp/shared/base-mcp-server.js.map +1 -0
  89. package/dist/mcp/shared/mcp-memory-manager.d.ts +87 -0
  90. package/dist/mcp/shared/mcp-memory-manager.d.ts.map +1 -0
  91. package/dist/mcp/shared/mcp-memory-manager.js +423 -0
  92. package/dist/mcp/shared/mcp-memory-manager.js.map +1 -0
  93. package/dist/memory/index.d.ts +9 -0
  94. package/dist/memory/index.d.ts.map +1 -0
  95. package/dist/memory/index.js +20 -0
  96. package/dist/memory/index.js.map +1 -0
  97. package/dist/memory/mcp-integration-example.d.ts +6 -0
  98. package/dist/memory/mcp-integration-example.d.ts.map +1 -0
  99. package/dist/memory/mcp-integration-example.js +282 -0
  100. package/dist/memory/mcp-integration-example.js.map +1 -0
  101. package/dist/memory/memory-client.d.ts +184 -0
  102. package/dist/memory/memory-client.d.ts.map +1 -0
  103. package/dist/memory/memory-client.js +325 -0
  104. package/dist/memory/memory-client.js.map +1 -0
  105. package/dist/memory/memory-operations.d.ts +170 -0
  106. package/dist/memory/memory-operations.d.ts.map +1 -0
  107. package/dist/memory/memory-operations.js +639 -0
  108. package/dist/memory/memory-operations.js.map +1 -0
  109. package/dist/memory/memory-system.d.ts +118 -0
  110. package/dist/memory/memory-system.d.ts.map +1 -0
  111. package/dist/memory/memory-system.js +477 -0
  112. package/dist/memory/memory-system.js.map +1 -0
  113. package/dist/memory/memory-test.d.ts +6 -0
  114. package/dist/memory/memory-test.d.ts.map +1 -0
  115. package/dist/memory/memory-test.js +162 -0
  116. package/dist/memory/memory-test.js.map +1 -0
  117. package/dist/memory/swarm-memory.d.ts +135 -0
  118. package/dist/memory/swarm-memory.d.ts.map +1 -0
  119. package/dist/memory/swarm-memory.js +378 -0
  120. package/dist/memory/swarm-memory.js.map +1 -0
  121. package/dist/monitoring/performance-tracker.d.ts +157 -0
  122. package/dist/monitoring/performance-tracker.d.ts.map +1 -0
  123. package/dist/monitoring/performance-tracker.js +571 -0
  124. package/dist/monitoring/performance-tracker.js.map +1 -0
  125. package/dist/queen/agent-factory.d.ts +3 -0
  126. package/dist/queen/agent-factory.d.ts.map +1 -1
  127. package/dist/queen/agent-factory.js +52 -0
  128. package/dist/queen/agent-factory.js.map +1 -1
  129. package/dist/queen/queen-memory.d.ts +8 -2
  130. package/dist/queen/queen-memory.d.ts.map +1 -1
  131. package/dist/queen/queen-memory.js +46 -4
  132. package/dist/queen/queen-memory.js.map +1 -1
  133. package/dist/snow-flow-system.d.ts +132 -0
  134. package/dist/snow-flow-system.d.ts.map +1 -0
  135. package/dist/snow-flow-system.js +396 -0
  136. package/dist/snow-flow-system.js.map +1 -0
  137. package/dist/types/todo.types.d.ts +61 -0
  138. package/dist/types/todo.types.d.ts.map +1 -0
  139. package/dist/types/todo.types.js +7 -0
  140. package/dist/types/todo.types.js.map +1 -0
  141. package/dist/utils/error-recovery.d.ts +101 -0
  142. package/dist/utils/error-recovery.d.ts.map +1 -0
  143. package/dist/utils/error-recovery.js +548 -0
  144. package/dist/utils/error-recovery.js.map +1 -0
  145. package/dist/version.d.ts +1 -1
  146. package/dist/version.js +1 -1
  147. package/package.json +7 -2
  148. package/deploy.sh +0 -366
  149. package/docker/base/Dockerfile.base +0 -45
  150. package/docker/generate-services.js +0 -244
  151. package/docker/nginx/Dockerfile +0 -71
  152. package/docker/nginx/consul-template.hcl +0 -64
  153. package/docker/nginx/healthcheck.sh +0 -178
  154. package/docker/nginx/nginx.conf +0 -210
  155. package/docker/nginx/supervisord.conf +0 -57
  156. package/docker/nginx/templates/upstreams.conf.tpl +0 -48
  157. package/docker/services/automation-mcp/Dockerfile +0 -32
  158. package/docker/services/automation-mcp/config/service.json +0 -28
  159. package/docker/services/automation-mcp/entrypoint.js +0 -51
  160. package/docker/services/deployment-mcp/Dockerfile +0 -32
  161. package/docker/services/deployment-mcp/entrypoint.js +0 -51
  162. package/docker/services/flow-composer-mcp/Dockerfile +0 -32
  163. package/docker/services/flow-composer-mcp/config/service.json +0 -28
  164. package/docker/services/flow-composer-mcp/entrypoint.js +0 -51
  165. package/docker/services/graph-memory-mcp/Dockerfile +0 -32
  166. package/docker/services/graph-memory-mcp/config/service.json +0 -28
  167. package/docker/services/graph-memory-mcp/entrypoint.js +0 -51
  168. package/docker/services/integration-mcp/Dockerfile +0 -32
  169. package/docker/services/integration-mcp/config/service.json +0 -28
  170. package/docker/services/integration-mcp/entrypoint.js +0 -51
  171. package/docker/services/intelligent-mcp/Dockerfile +0 -32
  172. package/docker/services/intelligent-mcp/config/service.json +0 -28
  173. package/docker/services/intelligent-mcp/entrypoint.js +0 -51
  174. package/docker/services/operations-mcp/Dockerfile +0 -32
  175. package/docker/services/operations-mcp/config/service.json +0 -28
  176. package/docker/services/operations-mcp/entrypoint.js +0 -51
  177. package/docker/services/platform-development-mcp/Dockerfile +0 -32
  178. package/docker/services/platform-development-mcp/config/service.json +0 -28
  179. package/docker/services/platform-development-mcp/entrypoint.js +0 -51
  180. package/docker/services/reporting-analytics-mcp/Dockerfile +0 -32
  181. package/docker/services/reporting-analytics-mcp/config/service.json +0 -28
  182. package/docker/services/reporting-analytics-mcp/entrypoint.js +0 -51
  183. package/docker/services/security-compliance-mcp/Dockerfile +0 -32
  184. package/docker/services/security-compliance-mcp/config/service.json +0 -28
  185. package/docker/services/security-compliance-mcp/entrypoint.js +0 -51
  186. package/docker/services/update-set-mcp/Dockerfile +0 -32
  187. package/docker/services/update-set-mcp/config/service.json +0 -28
  188. package/docker/services/update-set-mcp/entrypoint.js +0 -51
  189. package/docker-compose.override.yml +0 -132
  190. package/docker-compose.prod.yml +0 -340
  191. package/docker-compose.yml +0 -579
  192. package/k8s/automation-mcp.yaml +0 -232
  193. package/k8s/configmap.yaml +0 -237
  194. package/k8s/deployment-mcp.yaml +0 -232
  195. package/k8s/flow-composer-mcp.yaml +0 -232
  196. package/k8s/generate-k8s-manifests.js +0 -453
  197. package/k8s/graph-memory-mcp.yaml +0 -232
  198. package/k8s/infrastructure.yaml +0 -456
  199. package/k8s/ingress.yaml +0 -361
  200. package/k8s/integration-mcp.yaml +0 -232
  201. package/k8s/intelligent-mcp.yaml +0 -232
  202. package/k8s/kustomization.yaml +0 -111
  203. package/k8s/mcp-services.yaml +0 -2552
  204. package/k8s/monitoring.yaml +0 -515
  205. package/k8s/namespace.yaml +0 -80
  206. package/k8s/operations-mcp.yaml +0 -232
  207. package/k8s/platform-development-mcp.yaml +0 -232
  208. package/k8s/rbac.yaml +0 -140
  209. package/k8s/reporting-analytics-mcp.yaml +0 -232
  210. package/k8s/security-compliance-mcp.yaml +0 -232
  211. package/k8s/update-set-mcp.yaml +0 -232
  212. package/test-clean-install/.claude/config.json +0 -12
  213. package/test-clean-install/.env.example +0 -49
  214. package/test-clean-install/CLAUDE.md +0 -26
  215. package/test-clean-install/README.md +0 -23
  216. package/test-global-install/.claude/config.json +0 -12
  217. package/test-global-install/CLAUDE.md +0 -26
  218. package/test-global-install/README.md +0 -23
  219. package/test-global-install/test-global-install/.claude/config.json +0 -12
  220. package/test-global-install/test-global-install/CLAUDE.md +0 -26
  221. package/test-global-install/test-global-install/README.md +0 -23
  222. package/test-global-install/test-global-install/test-global-install/.claude/config.json +0 -12
  223. package/test-global-install/test-global-install/test-global-install/.env.example +0 -49
  224. package/test-global-install/test-global-install/test-global-install/CLAUDE.md +0 -26
  225. package/test-global-install/test-global-install/test-global-install/README.md +0 -23
  226. package/test-init-debug/.claude/config.json +0 -12
  227. package/test-init-debug/CLAUDE.md +0 -693
  228. package/test-init-debug/README.md +0 -392
  229. package/test-init-real/.claude/config.json +0 -12
  230. package/test-init-real/.claude/mcp-config.json +0 -128
  231. package/test-init-real/.claude/settings.json +0 -37
  232. package/test-init-real/CLAUDE.md +0 -693
  233. package/test-init-real/README.md +0 -392
  234. package/test-init-real/activate-mcp.sh +0 -15
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicenow-deployment-mcp-refactored.js","sourceRoot":"","sources":["../../src/mcp/servicenow-deployment-mcp-refactored.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * ServiceNow Intelligent MCP Server - Agent-Integrated Version
4
+ * Smart discovery and memory-aware operations for the agent ecosystem
5
+ */
6
+ import { BaseMCPServer } from './shared/base-mcp-server.js';
7
+ export declare class ServiceNowIntelligentMCP extends BaseMCPServer {
8
+ private searchCache;
9
+ private cacheTimeout;
10
+ constructor();
11
+ private setupHandlers;
12
+ /**
13
+ * Find artifact with memory-first approach
14
+ */
15
+ private findArtifactWithMemory;
16
+ /**
17
+ * Analyze artifact with deep learning
18
+ */
19
+ private analyzeArtifactWithMemory;
20
+ /**
21
+ * Search memory for artifacts
22
+ */
23
+ private searchMemory;
24
+ /**
25
+ * Comprehensive search across all tables
26
+ */
27
+ private comprehensiveSearch;
28
+ private searchMemoryForArtifacts;
29
+ private searchServiceNow;
30
+ private searchTable;
31
+ private performDeepAnalysis;
32
+ private findRelationships;
33
+ private updateSearchContext;
34
+ private getCachedResults;
35
+ private cacheResults;
36
+ private calculateRelevance;
37
+ private getArtifactType;
38
+ private getTableForType;
39
+ private getSearchConfigForType;
40
+ private getAllSearchConfigs;
41
+ private hashQuery;
42
+ }
43
+ //# sourceMappingURL=servicenow-intelligent-mcp-refactored.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicenow-intelligent-mcp-refactored.d.ts","sourceRoot":"","sources":["../../src/mcp/servicenow-intelligent-mcp-refactored.ts"],"names":[],"mappings":";AACA;;;GAGG;AAOH,OAAO,EAAE,aAAa,EAAiB,MAAM,6BAA6B,CAAC;AAa3E,qBAAa,wBAAyB,SAAQ,aAAa;IACzD,OAAO,CAAC,WAAW,CAA8D;IACjF,OAAO,CAAC,YAAY,CAAiB;;IAQrC,OAAO,CAAC,aAAa;IAyGrB;;OAEG;YACW,sBAAsB;IAiFpC;;OAEG;YACW,yBAAyB;IA8EvC;;OAEG;YACW,YAAY;IA0B1B;;OAEG;YACW,mBAAmB;YAmFnB,wBAAwB;YA2BxB,gBAAgB;YA+BhB,WAAW;YA8BX,mBAAmB;YAgFnB,iBAAiB;YA0BjB,mBAAmB;IAsBjC,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,kBAAkB;IAmB1B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,SAAS;CAGlB"}
@@ -0,0 +1,576 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * ServiceNow Intelligent MCP Server - Agent-Integrated Version
5
+ * Smart discovery and memory-aware operations for the agent ecosystem
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.ServiceNowIntelligentMCP = void 0;
42
+ const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
43
+ const base_mcp_server_js_1 = require("./shared/base-mcp-server.js");
44
+ const crypto = __importStar(require("crypto"));
45
+ class ServiceNowIntelligentMCP extends base_mcp_server_js_1.BaseMCPServer {
46
+ constructor() {
47
+ super('servicenow-intelligent', '2.0.0');
48
+ this.cacheTimeout = 5 * 60 * 1000; // 5 minutes
49
+ this.searchCache = new Map();
50
+ this.setupHandlers();
51
+ }
52
+ setupHandlers() {
53
+ this.server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
54
+ tools: [
55
+ {
56
+ name: 'snow_find_artifact',
57
+ description: 'AUTONOMOUS artifact discovery - finds ServiceNow artifacts using natural language, searches memory first, then ServiceNow. NO MANUAL SEARCH NEEDED.',
58
+ inputSchema: {
59
+ type: 'object',
60
+ properties: {
61
+ query: {
62
+ type: 'string',
63
+ description: 'Natural language query (e.g., "the widget that shows incidents on homepage")'
64
+ },
65
+ type: {
66
+ type: 'string',
67
+ enum: ['widget', 'flow', 'script', 'application', 'any'],
68
+ description: 'Artifact type filter'
69
+ },
70
+ // Agent context
71
+ session_id: { type: 'string', description: 'Agent session ID' },
72
+ agent_id: { type: 'string', description: 'Searching agent ID' },
73
+ agent_type: { type: 'string', description: 'Type of agent' },
74
+ use_cache: { type: 'boolean', default: true, description: 'Use cached results if available' }
75
+ },
76
+ required: ['query']
77
+ }
78
+ },
79
+ {
80
+ name: 'snow_analyze_artifact',
81
+ description: 'AUTONOMOUS deep analysis - intelligently indexes artifacts for optimal Claude understanding, stores in memory for future use. SELF-LEARNING SYSTEM.',
82
+ inputSchema: {
83
+ type: 'object',
84
+ properties: {
85
+ sys_id: { type: 'string', description: 'System ID of the artifact' },
86
+ table: { type: 'string', description: 'ServiceNow table name' },
87
+ session_id: { type: 'string' },
88
+ agent_id: { type: 'string' },
89
+ agent_type: { type: 'string' },
90
+ deep_analysis: { type: 'boolean', default: true, description: 'Perform deep analysis' }
91
+ },
92
+ required: ['sys_id', 'table']
93
+ }
94
+ },
95
+ {
96
+ name: 'snow_memory_search',
97
+ description: 'Search indexed ServiceNow artifacts in memory',
98
+ inputSchema: {
99
+ type: 'object',
100
+ properties: {
101
+ query: { type: 'string', description: 'Search query' },
102
+ type: {
103
+ type: 'string',
104
+ enum: ['widget', 'flow', 'script', 'application'],
105
+ description: 'Artifact type'
106
+ },
107
+ session_id: { type: 'string' },
108
+ agent_id: { type: 'string' }
109
+ },
110
+ required: ['query']
111
+ }
112
+ },
113
+ {
114
+ name: 'snow_comprehensive_search',
115
+ description: 'COMPREHENSIVE multi-table search - searches across all relevant ServiceNow tables for artifacts. Perfect for finding hard-to-locate items.',
116
+ inputSchema: {
117
+ type: 'object',
118
+ properties: {
119
+ query: { type: 'string', description: 'Natural language search query' },
120
+ include_inactive: { type: 'boolean', default: false, description: 'Include inactive records' },
121
+ session_id: { type: 'string' },
122
+ agent_id: { type: 'string' },
123
+ agent_type: { type: 'string' },
124
+ max_results: { type: 'number', default: 50, description: 'Maximum results to return' }
125
+ },
126
+ required: ['query']
127
+ }
128
+ }
129
+ ]
130
+ }));
131
+ this.server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
132
+ const { name, arguments: args } = request.params;
133
+ try {
134
+ switch (name) {
135
+ case 'snow_find_artifact':
136
+ return await this.findArtifactWithMemory(args);
137
+ case 'snow_analyze_artifact':
138
+ return await this.analyzeArtifactWithMemory(args);
139
+ case 'snow_memory_search':
140
+ return await this.searchMemory(args);
141
+ case 'snow_comprehensive_search':
142
+ return await this.comprehensiveSearch(args);
143
+ default:
144
+ throw new Error(`Unknown tool: ${name}`);
145
+ }
146
+ }
147
+ catch (error) {
148
+ return this.createErrorResponse(`Tool execution failed: ${name}`, error);
149
+ }
150
+ });
151
+ }
152
+ /**
153
+ * Find artifact with memory-first approach
154
+ */
155
+ async findArtifactWithMemory(args) {
156
+ return await this.executeWithAgentContext('snow_find_artifact', args, async (context) => {
157
+ const { query, type, use_cache } = args;
158
+ // Check authentication
159
+ if (!await this.checkAuthentication()) {
160
+ return this.createAuthenticationError();
161
+ }
162
+ this.assertNoMockData('artifact search');
163
+ // Progress: Starting search
164
+ await this.reportProgress(context, 10, 'Starting artifact search');
165
+ // Step 1: Check memory first
166
+ const memoryResults = await this.searchMemoryForArtifacts(query, type, context);
167
+ if (memoryResults.length > 0) {
168
+ await this.reportProgress(context, 30, 'Found artifacts in memory');
169
+ // Store search in context for other agents
170
+ await this.updateSearchContext(context, query, memoryResults);
171
+ return this.createSuccessResponse(`Found ${memoryResults.length} artifacts in memory`, { results: memoryResults, source: 'memory' });
172
+ }
173
+ // Step 2: Check cache if enabled
174
+ if (use_cache) {
175
+ const cachedResults = this.getCachedResults(query, type);
176
+ if (cachedResults) {
177
+ await this.reportProgress(context, 40, 'Using cached results');
178
+ return this.createSuccessResponse(`Found ${cachedResults.length} artifacts (cached)`, { results: cachedResults, source: 'cache' });
179
+ }
180
+ }
181
+ // Step 3: Search ServiceNow
182
+ await this.reportProgress(context, 50, 'Searching ServiceNow instance');
183
+ const searchResults = await this.searchServiceNow(query, type, context);
184
+ // Step 4: Store results in memory and cache
185
+ await this.reportProgress(context, 80, 'Indexing results');
186
+ for (const result of searchResults) {
187
+ await this.storeArtifact(context, {
188
+ sys_id: result.sys_id,
189
+ type: result.type,
190
+ name: result.name,
191
+ description: result.description
192
+ });
193
+ }
194
+ // Cache results
195
+ this.cacheResults(query, type, searchResults);
196
+ // Update search context
197
+ await this.updateSearchContext(context, query, searchResults);
198
+ await this.reportProgress(context, 100, 'Search complete');
199
+ return this.createSuccessResponse(`Found ${searchResults.length} artifacts in ServiceNow`, {
200
+ results: searchResults,
201
+ source: 'servicenow',
202
+ indexed: true
203
+ });
204
+ });
205
+ }
206
+ /**
207
+ * Analyze artifact with deep learning
208
+ */
209
+ async analyzeArtifactWithMemory(args) {
210
+ return await this.executeWithAgentContext('snow_analyze_artifact', args, async (context) => {
211
+ const { sys_id, table, deep_analysis } = args;
212
+ if (!await this.checkAuthentication()) {
213
+ return this.createAuthenticationError();
214
+ }
215
+ this.assertNoMockData('artifact analysis');
216
+ await this.reportProgress(context, 10, 'Fetching artifact details');
217
+ // Fetch artifact from ServiceNow
218
+ const artifact = await this.client.getRecord(table, sys_id);
219
+ if (!artifact.success || !artifact.result) {
220
+ throw new Error(`Artifact ${sys_id} not found in table ${table}`);
221
+ }
222
+ await this.reportProgress(context, 30, 'Analyzing artifact structure');
223
+ // Perform deep analysis
224
+ const analysis = await this.performDeepAnalysis(artifact.result, table, deep_analysis);
225
+ // Store analysis in memory
226
+ await this.memory.updateSharedContext({
227
+ session_id: context.session_id,
228
+ context_key: `artifact_analysis_${sys_id}`,
229
+ context_value: JSON.stringify(analysis),
230
+ created_by_agent: context.agent_id
231
+ });
232
+ // Store enhanced artifact info
233
+ await this.storeArtifact(context, {
234
+ sys_id: sys_id,
235
+ type: this.getArtifactType(table),
236
+ name: artifact.result.name || artifact.result.id || sys_id,
237
+ description: artifact.result.description,
238
+ config: analysis.config
239
+ });
240
+ await this.reportProgress(context, 70, 'Identifying relationships');
241
+ // Find related artifacts
242
+ const relationships = await this.findRelationships(artifact.result, table, context);
243
+ // Notify relevant agents based on artifact type
244
+ if (analysis.requires_ui_work && this.getArtifactType(table) === 'widget') {
245
+ await this.notifyHandoff(context, 'ui_specialist', {
246
+ type: 'widget',
247
+ sys_id: sys_id,
248
+ next_steps: analysis.suggested_improvements || []
249
+ });
250
+ }
251
+ await this.reportProgress(context, 100, 'Analysis complete');
252
+ return this.createSuccessResponse(`Deep analysis completed for ${artifact.result.name || sys_id}`, {
253
+ artifact: {
254
+ sys_id: sys_id,
255
+ name: artifact.result.name,
256
+ type: this.getArtifactType(table),
257
+ table: table
258
+ },
259
+ analysis: analysis,
260
+ relationships: relationships,
261
+ indexed: true
262
+ });
263
+ });
264
+ }
265
+ /**
266
+ * Search memory for artifacts
267
+ */
268
+ async searchMemory(args) {
269
+ return await this.executeWithAgentContext('snow_memory_search', args, async (context) => {
270
+ const { query, type } = args;
271
+ const artifacts = await this.memory.getSessionArtifacts(context.session_id);
272
+ const results = artifacts.filter(artifact => {
273
+ const matchesType = !type || artifact.artifact_type === type;
274
+ const matchesQuery = artifact.name.toLowerCase().includes(query.toLowerCase()) ||
275
+ (artifact.description && artifact.description.toLowerCase().includes(query.toLowerCase()));
276
+ return matchesType && matchesQuery;
277
+ });
278
+ return this.createSuccessResponse(`Found ${results.length} artifacts in memory`, { results });
279
+ });
280
+ }
281
+ /**
282
+ * Comprehensive search across all tables
283
+ */
284
+ async comprehensiveSearch(args) {
285
+ return await this.executeWithAgentContext('snow_comprehensive_search', args, async (context) => {
286
+ const { query, include_inactive, max_results } = args;
287
+ if (!await this.checkAuthentication()) {
288
+ return this.createAuthenticationError();
289
+ }
290
+ this.assertNoMockData('comprehensive search');
291
+ // Define tables to search
292
+ const searchTables = [
293
+ { table: 'sp_widget', type: 'widget', nameField: 'name' },
294
+ { table: 'sys_hub_flow', type: 'flow', nameField: 'name' },
295
+ { table: 'sys_script_include', type: 'script', nameField: 'name' },
296
+ { table: 'sys_app', type: 'application', nameField: 'name' },
297
+ { table: 'sc_cat_item', type: 'catalog_item', nameField: 'name' },
298
+ { table: 'sys_script', type: 'business_rule', nameField: 'name' }
299
+ ];
300
+ const allResults = [];
301
+ let tablesSearched = 0;
302
+ for (const searchConfig of searchTables) {
303
+ await this.reportProgress(context, 10 + (80 * tablesSearched / searchTables.length), `Searching ${searchConfig.type} records`);
304
+ try {
305
+ const results = await this.searchTable(searchConfig.table, searchConfig.nameField, query, searchConfig.type, include_inactive, Math.floor(max_results / searchTables.length));
306
+ allResults.push(...results);
307
+ tablesSearched++;
308
+ // Store found artifacts
309
+ for (const result of results) {
310
+ await this.storeArtifact(context, {
311
+ sys_id: result.sys_id,
312
+ type: result.type,
313
+ name: result.name,
314
+ description: result.description
315
+ });
316
+ }
317
+ }
318
+ catch (error) {
319
+ this.logger.warn(`Failed to search ${searchConfig.table}`, error);
320
+ }
321
+ }
322
+ // Sort by relevance
323
+ allResults.sort((a, b) => (b.relevance_score || 0) - (a.relevance_score || 0));
324
+ // Limit results
325
+ const finalResults = allResults.slice(0, max_results);
326
+ await this.reportProgress(context, 100, 'Search complete');
327
+ return this.createSuccessResponse(`Comprehensive search found ${finalResults.length} artifacts across ${tablesSearched} tables`, {
328
+ results: finalResults,
329
+ tables_searched: tablesSearched,
330
+ total_found: allResults.length,
331
+ limited_to: max_results
332
+ });
333
+ });
334
+ }
335
+ // Helper methods
336
+ async searchMemoryForArtifacts(query, type, context) {
337
+ const artifacts = await this.memory.getSessionArtifacts(context.session_id);
338
+ return artifacts
339
+ .filter(artifact => {
340
+ const matchesType = !type || type === 'any' || artifact.artifact_type === type;
341
+ const queryLower = query.toLowerCase();
342
+ const matchesQuery = artifact.name.toLowerCase().includes(queryLower) ||
343
+ (artifact.description && artifact.description.toLowerCase().includes(queryLower));
344
+ return matchesType && matchesQuery;
345
+ })
346
+ .map(artifact => ({
347
+ sys_id: artifact.sys_id,
348
+ name: artifact.name,
349
+ type: artifact.artifact_type,
350
+ table: this.getTableForType(artifact.artifact_type),
351
+ description: artifact.description,
352
+ relevance_score: this.calculateRelevance(artifact.name, query)
353
+ }));
354
+ }
355
+ async searchServiceNow(query, type, context) {
356
+ const results = [];
357
+ // Determine which tables to search
358
+ const tablesToSearch = type && type !== 'any'
359
+ ? [this.getSearchConfigForType(type)]
360
+ : this.getAllSearchConfigs();
361
+ for (const config of tablesToSearch) {
362
+ try {
363
+ const tableResults = await this.searchTable(config.table, config.nameField, query, config.type, false, 10);
364
+ results.push(...tableResults);
365
+ }
366
+ catch (error) {
367
+ this.logger.warn(`Search failed for table ${config.table}`, error);
368
+ }
369
+ }
370
+ return results;
371
+ }
372
+ async searchTable(table, nameField, query, type, includeInactive, limit) {
373
+ const encodedQuery = `${nameField}LIKE${query}${includeInactive ? '' : '^active=true'}`;
374
+ const response = await this.client.getRecords(table, {
375
+ sysparm_query: encodedQuery,
376
+ sysparm_limit: limit,
377
+ sysparm_fields: `sys_id,${nameField},description,active`
378
+ });
379
+ if (!response.success || !response.result) {
380
+ return [];
381
+ }
382
+ return response.result.map((record) => ({
383
+ sys_id: record.sys_id,
384
+ name: record[nameField] || 'Unnamed',
385
+ type: type,
386
+ table: table,
387
+ description: record.description,
388
+ relevance_score: this.calculateRelevance(record[nameField] || '', query)
389
+ }));
390
+ }
391
+ async performDeepAnalysis(artifact, table, deep) {
392
+ const analysis = {
393
+ structure: {},
394
+ dependencies: [],
395
+ config: {},
396
+ suggested_improvements: []
397
+ };
398
+ // Analyze based on artifact type
399
+ const artifactType = this.getArtifactType(table);
400
+ switch (artifactType) {
401
+ case 'widget':
402
+ analysis.structure = {
403
+ has_template: !!artifact.template,
404
+ has_css: !!artifact.css,
405
+ has_client_script: !!artifact.client_script,
406
+ has_server_script: !!artifact.server_script,
407
+ uses_options: !!artifact.option_schema
408
+ };
409
+ if (deep) {
410
+ // Check for common patterns
411
+ if (artifact.template && !artifact.template.includes('ng-')) {
412
+ analysis.suggested_improvements.push('Consider using Angular directives');
413
+ }
414
+ if (!artifact.css || artifact.css.length < 50) {
415
+ analysis.suggested_improvements.push('Add responsive CSS styling');
416
+ analysis.requires_ui_work = true;
417
+ }
418
+ }
419
+ analysis.config = {
420
+ name: artifact.name,
421
+ template_size: artifact.template?.length || 0,
422
+ css_size: artifact.css?.length || 0,
423
+ requires_data: artifact.server_script?.includes('data.') || false
424
+ };
425
+ break;
426
+ case 'flow':
427
+ analysis.structure = {
428
+ trigger_type: artifact.trigger_type,
429
+ table: artifact.table_name,
430
+ active: artifact.active,
431
+ has_conditions: !!artifact.condition
432
+ };
433
+ analysis.config = {
434
+ name: artifact.name,
435
+ complexity: 'medium' // Would need to analyze flow definition
436
+ };
437
+ break;
438
+ case 'script':
439
+ analysis.structure = {
440
+ api_name: artifact.api_name,
441
+ client_callable: artifact.client_callable,
442
+ active: artifact.active
443
+ };
444
+ if (deep && artifact.script) {
445
+ // Simple dependency detection
446
+ const scriptDeps = [];
447
+ if (artifact.script.includes('GlideRecord'))
448
+ scriptDeps.push('GlideRecord API');
449
+ if (artifact.script.includes('GlideAjax'))
450
+ scriptDeps.push('GlideAjax');
451
+ if (artifact.script.includes('gs.'))
452
+ scriptDeps.push('GlideSystem API');
453
+ analysis.dependencies = scriptDeps;
454
+ }
455
+ break;
456
+ }
457
+ return analysis;
458
+ }
459
+ async findRelationships(artifact, table, context) {
460
+ const relationships = [];
461
+ // Find references in the artifact
462
+ if (table === 'sp_widget' && artifact.server_script) {
463
+ // Look for script includes
464
+ const scriptMatches = artifact.server_script.match(/new\s+(\w+)\(/g);
465
+ if (scriptMatches) {
466
+ for (const match of scriptMatches) {
467
+ const scriptName = match.replace(/new\s+/, '').replace(/\(/, '');
468
+ relationships.push({
469
+ type: 'uses_script',
470
+ name: scriptName,
471
+ table: 'sys_script_include'
472
+ });
473
+ }
474
+ }
475
+ }
476
+ return relationships;
477
+ }
478
+ async updateSearchContext(context, query, results) {
479
+ await this.memory.updateSharedContext({
480
+ session_id: context.session_id,
481
+ context_key: `search_${this.hashQuery(query)}`,
482
+ context_value: JSON.stringify({
483
+ query,
484
+ results: results.map(r => ({
485
+ sys_id: r.sys_id,
486
+ name: r.name,
487
+ type: r.type
488
+ })),
489
+ timestamp: new Date().toISOString(),
490
+ found_count: results.length
491
+ }),
492
+ created_by_agent: context.agent_id
493
+ });
494
+ }
495
+ getCachedResults(query, type) {
496
+ const cacheKey = `${query}_${type || 'any'}`;
497
+ const cached = this.searchCache.get(cacheKey);
498
+ if (cached && Date.now() - cached.timestamp < this.cacheTimeout) {
499
+ return cached.results;
500
+ }
501
+ return null;
502
+ }
503
+ cacheResults(query, type, results) {
504
+ const cacheKey = `${query}_${type || 'any'}`;
505
+ this.searchCache.set(cacheKey, {
506
+ results,
507
+ timestamp: Date.now()
508
+ });
509
+ }
510
+ calculateRelevance(name, query) {
511
+ const nameLower = name.toLowerCase();
512
+ const queryLower = query.toLowerCase();
513
+ // Exact match
514
+ if (nameLower === queryLower)
515
+ return 1.0;
516
+ // Starts with query
517
+ if (nameLower.startsWith(queryLower))
518
+ return 0.9;
519
+ // Contains query
520
+ if (nameLower.includes(queryLower))
521
+ return 0.7;
522
+ // Fuzzy match (simple)
523
+ const queryWords = queryLower.split(/\s+/);
524
+ const matchedWords = queryWords.filter(word => nameLower.includes(word));
525
+ return matchedWords.length / queryWords.length * 0.5;
526
+ }
527
+ getArtifactType(table) {
528
+ const typeMap = {
529
+ 'sp_widget': 'widget',
530
+ 'sys_hub_flow': 'flow',
531
+ 'sys_script_include': 'script',
532
+ 'sys_app': 'application',
533
+ 'sc_cat_item': 'catalog_item',
534
+ 'sys_script': 'business_rule'
535
+ };
536
+ return typeMap[table] || 'unknown';
537
+ }
538
+ getTableForType(type) {
539
+ const tableMap = {
540
+ 'widget': 'sp_widget',
541
+ 'flow': 'sys_hub_flow',
542
+ 'script': 'sys_script_include',
543
+ 'application': 'sys_app',
544
+ 'catalog_item': 'sc_cat_item',
545
+ 'business_rule': 'sys_script'
546
+ };
547
+ return tableMap[type] || 'sys_metadata';
548
+ }
549
+ getSearchConfigForType(type) {
550
+ const configs = {
551
+ 'widget': { table: 'sp_widget', type: 'widget', nameField: 'name' },
552
+ 'flow': { table: 'sys_hub_flow', type: 'flow', nameField: 'name' },
553
+ 'script': { table: 'sys_script_include', type: 'script', nameField: 'name' },
554
+ 'application': { table: 'sys_app', type: 'application', nameField: 'name' }
555
+ };
556
+ return configs[type] || configs['widget'];
557
+ }
558
+ getAllSearchConfigs() {
559
+ return [
560
+ { table: 'sp_widget', type: 'widget', nameField: 'name' },
561
+ { table: 'sys_hub_flow', type: 'flow', nameField: 'name' },
562
+ { table: 'sys_script_include', type: 'script', nameField: 'name' },
563
+ { table: 'sys_app', type: 'application', nameField: 'name' }
564
+ ];
565
+ }
566
+ hashQuery(query) {
567
+ return crypto.createHash('md5').update(query).digest('hex').substring(0, 8);
568
+ }
569
+ }
570
+ exports.ServiceNowIntelligentMCP = ServiceNowIntelligentMCP;
571
+ // Start the server
572
+ if (import.meta.url === `file://${process.argv[1]}`) {
573
+ const server = new ServiceNowIntelligentMCP();
574
+ server.start().catch(console.error);
575
+ }
576
+ //# sourceMappingURL=servicenow-intelligent-mcp-refactored.js.map