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.
- package/.env.example +49 -0
- package/.mcp.json +106 -0
- package/.mcp.json.template +106 -0
- package/LICENSE +21 -0
- package/README.md +236 -0
- package/bin/snow-flow +4 -0
- package/bin/snow-flow.js +3 -0
- package/claude-flow +79 -0
- package/claude-flow.bat +18 -0
- package/claude-flow.config.json +20 -0
- package/claude-flow.ps1 +24 -0
- package/dist/agents/app-creator.agent.d.ts +55 -0
- package/dist/agents/app-creator.agent.d.ts.map +1 -0
- package/dist/agents/app-creator.agent.js +1292 -0
- package/dist/agents/app-creator.agent.js.map +1 -0
- package/dist/agents/base-snow-agent.d.ts +63 -0
- package/dist/agents/base-snow-agent.d.ts.map +1 -0
- package/dist/agents/base-snow-agent.js +296 -0
- package/dist/agents/base-snow-agent.js.map +1 -0
- package/dist/agents/script-generator.agent.d.ts +32 -0
- package/dist/agents/script-generator.agent.d.ts.map +1 -0
- package/dist/agents/script-generator.agent.js +772 -0
- package/dist/agents/script-generator.agent.js.map +1 -0
- package/dist/agents/ui-builder.agent.d.ts +50 -0
- package/dist/agents/ui-builder.agent.d.ts.map +1 -0
- package/dist/agents/ui-builder.agent.js +1539 -0
- package/dist/agents/ui-builder.agent.js.map +1 -0
- package/dist/agents/widget-builder.agent.d.ts +32 -0
- package/dist/agents/widget-builder.agent.d.ts.map +1 -0
- package/dist/agents/widget-builder.agent.js +439 -0
- package/dist/agents/widget-builder.agent.js.map +1 -0
- package/dist/agents/workflow-designer.agent.d.ts +31 -0
- package/dist/agents/workflow-designer.agent.d.ts.map +1 -0
- package/dist/agents/workflow-designer.agent.js +583 -0
- package/dist/agents/workflow-designer.agent.js.map +1 -0
- package/dist/api/error-handling.d.ts +214 -0
- package/dist/api/error-handling.d.ts.map +1 -0
- package/dist/api/error-handling.js +594 -0
- package/dist/api/error-handling.js.map +1 -0
- package/dist/api/flow-designer-api.d.ts +167 -0
- package/dist/api/flow-designer-api.d.ts.map +1 -0
- package/dist/api/flow-designer-api.js +555 -0
- package/dist/api/flow-designer-api.js.map +1 -0
- package/dist/api/natural-language-mapper.d.ts +126 -0
- package/dist/api/natural-language-mapper.d.ts.map +1 -0
- package/dist/api/natural-language-mapper.js +498 -0
- package/dist/api/natural-language-mapper.js.map +1 -0
- package/dist/api/performance-optimizer.d.ts +240 -0
- package/dist/api/performance-optimizer.d.ts.map +1 -0
- package/dist/api/performance-optimizer.js +701 -0
- package/dist/api/performance-optimizer.js.map +1 -0
- package/dist/api/transaction-manager.d.ts +189 -0
- package/dist/api/transaction-manager.d.ts.map +1 -0
- package/dist/api/transaction-manager.js +576 -0
- package/dist/api/transaction-manager.js.map +1 -0
- package/dist/cli/deploy-artifact.d.ts +7 -0
- package/dist/cli/deploy-artifact.d.ts.map +1 -0
- package/dist/cli/deploy-artifact.js +279 -0
- package/dist/cli/deploy-artifact.js.map +1 -0
- package/dist/cli.d.ts +6 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +2057 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/dist/managers/scope-manager.d.ts +75 -0
- package/dist/managers/scope-manager.d.ts.map +1 -0
- package/dist/managers/scope-manager.js +448 -0
- package/dist/managers/scope-manager.js.map +1 -0
- package/dist/mcp/mcp-wrapper.d.ts +8 -0
- package/dist/mcp/mcp-wrapper.d.ts.map +1 -0
- package/dist/mcp/mcp-wrapper.js +77 -0
- package/dist/mcp/mcp-wrapper.js.map +1 -0
- package/dist/mcp/servicenow-automation-mcp.d.ts +8 -0
- package/dist/mcp/servicenow-automation-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-automation-mcp.js +683 -0
- package/dist/mcp/servicenow-automation-mcp.js.map +1 -0
- package/dist/mcp/servicenow-deployment-mcp.d.ts +7 -0
- package/dist/mcp/servicenow-deployment-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-deployment-mcp.js +972 -0
- package/dist/mcp/servicenow-deployment-mcp.js.map +1 -0
- package/dist/mcp/servicenow-flow-composer-mcp.d.ts +7 -0
- package/dist/mcp/servicenow-flow-composer-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-flow-composer-mcp.js +1121 -0
- package/dist/mcp/servicenow-flow-composer-mcp.js.map +1 -0
- package/dist/mcp/servicenow-graph-memory-mcp.d.ts +7 -0
- package/dist/mcp/servicenow-graph-memory-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-graph-memory-mcp.js +703 -0
- package/dist/mcp/servicenow-graph-memory-mcp.js.map +1 -0
- package/dist/mcp/servicenow-integration-mcp.d.ts +8 -0
- package/dist/mcp/servicenow-integration-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-integration-mcp.js +689 -0
- package/dist/mcp/servicenow-integration-mcp.js.map +1 -0
- package/dist/mcp/servicenow-intelligent-mcp.d.ts +7 -0
- package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-intelligent-mcp.js +1138 -0
- package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -0
- package/dist/mcp/servicenow-mcp-server.d.ts +37 -0
- package/dist/mcp/servicenow-mcp-server.d.ts.map +1 -0
- package/dist/mcp/servicenow-mcp-server.js +648 -0
- package/dist/mcp/servicenow-mcp-server.js.map +1 -0
- package/dist/mcp/servicenow-operations-mcp.d.ts +15 -0
- package/dist/mcp/servicenow-operations-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-operations-mcp.js +1287 -0
- package/dist/mcp/servicenow-operations-mcp.js.map +1 -0
- package/dist/mcp/servicenow-platform-development-mcp.d.ts +8 -0
- package/dist/mcp/servicenow-platform-development-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-platform-development-mcp.js +557 -0
- package/dist/mcp/servicenow-platform-development-mcp.js.map +1 -0
- package/dist/mcp/servicenow-progressive-indexer.d.ts +79 -0
- package/dist/mcp/servicenow-progressive-indexer.d.ts.map +1 -0
- package/dist/mcp/servicenow-progressive-indexer.js +320 -0
- package/dist/mcp/servicenow-progressive-indexer.js.map +1 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts +8 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.js +888 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.js.map +1 -0
- package/dist/mcp/servicenow-security-compliance-mcp.d.ts +8 -0
- package/dist/mcp/servicenow-security-compliance-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-security-compliance-mcp.js +812 -0
- package/dist/mcp/servicenow-security-compliance-mcp.js.map +1 -0
- package/dist/mcp/servicenow-update-set-mcp.d.ts +7 -0
- package/dist/mcp/servicenow-update-set-mcp.d.ts.map +1 -0
- package/dist/mcp/servicenow-update-set-mcp.js +599 -0
- package/dist/mcp/servicenow-update-set-mcp.js.map +1 -0
- package/dist/mcp/start-all-mcp-servers.d.ts +6 -0
- package/dist/mcp/start-all-mcp-servers.d.ts.map +1 -0
- package/dist/mcp/start-all-mcp-servers.js +65 -0
- package/dist/mcp/start-all-mcp-servers.js.map +1 -0
- package/dist/mcp/start-servicenow-mcp.d.ts +7 -0
- package/dist/mcp/start-servicenow-mcp.d.ts.map +1 -0
- package/dist/mcp/start-servicenow-mcp.js +64 -0
- package/dist/mcp/start-servicenow-mcp.js.map +1 -0
- package/dist/mcp/test-simple-mcp.d.ts +6 -0
- package/dist/mcp/test-simple-mcp.d.ts.map +1 -0
- package/dist/mcp/test-simple-mcp.js +64 -0
- package/dist/mcp/test-simple-mcp.js.map +1 -0
- package/dist/orchestrator/flow-composer.d.ts +269 -0
- package/dist/orchestrator/flow-composer.d.ts.map +1 -0
- package/dist/orchestrator/flow-composer.js +2221 -0
- package/dist/orchestrator/flow-composer.js.map +1 -0
- package/dist/orchestrator/flow-pattern-templates.d.ts +260 -0
- package/dist/orchestrator/flow-pattern-templates.d.ts.map +1 -0
- package/dist/orchestrator/flow-pattern-templates.js +906 -0
- package/dist/orchestrator/flow-pattern-templates.js.map +1 -0
- package/dist/orchestrator/flow-subflow-decision-engine.d.ts +202 -0
- package/dist/orchestrator/flow-subflow-decision-engine.d.ts.map +1 -0
- package/dist/orchestrator/flow-subflow-decision-engine.js +769 -0
- package/dist/orchestrator/flow-subflow-decision-engine.js.map +1 -0
- package/dist/orchestrator/flow-validation-engine.d.ts +145 -0
- package/dist/orchestrator/flow-validation-engine.d.ts.map +1 -0
- package/dist/orchestrator/flow-validation-engine.js +663 -0
- package/dist/orchestrator/flow-validation-engine.js.map +1 -0
- package/dist/orchestrator/snow-orchestrator.d.ts +49 -0
- package/dist/orchestrator/snow-orchestrator.d.ts.map +1 -0
- package/dist/orchestrator/snow-orchestrator.js +235 -0
- package/dist/orchestrator/snow-orchestrator.js.map +1 -0
- package/dist/orchestrator/subflow-creation-handler.d.ts +230 -0
- package/dist/orchestrator/subflow-creation-handler.d.ts.map +1 -0
- package/dist/orchestrator/subflow-creation-handler.js +791 -0
- package/dist/orchestrator/subflow-creation-handler.js.map +1 -0
- package/dist/strategies/global-scope-strategy.d.ts +123 -0
- package/dist/strategies/global-scope-strategy.d.ts.map +1 -0
- package/dist/strategies/global-scope-strategy.js +585 -0
- package/dist/strategies/global-scope-strategy.js.map +1 -0
- package/dist/types/index.d.ts +138 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +4 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/servicenow.types.d.ts +260 -0
- package/dist/types/servicenow.types.d.ts.map +1 -0
- package/dist/types/servicenow.types.js +3 -0
- package/dist/types/servicenow.types.js.map +1 -0
- package/dist/types/snow-flow.types.d.ts +114 -0
- package/dist/types/snow-flow.types.d.ts.map +1 -0
- package/dist/types/snow-flow.types.js +3 -0
- package/dist/types/snow-flow.types.js.map +1 -0
- package/dist/utils/action-type-cache.d.ts +66 -0
- package/dist/utils/action-type-cache.d.ts.map +1 -0
- package/dist/utils/action-type-cache.js +237 -0
- package/dist/utils/action-type-cache.js.map +1 -0
- package/dist/utils/agent-detector.d.ts +35 -0
- package/dist/utils/agent-detector.d.ts.map +1 -0
- package/dist/utils/agent-detector.js +353 -0
- package/dist/utils/agent-detector.js.map +1 -0
- package/dist/utils/flow-api-discovery.d.ts +151 -0
- package/dist/utils/flow-api-discovery.d.ts.map +1 -0
- package/dist/utils/flow-api-discovery.js +440 -0
- package/dist/utils/flow-api-discovery.js.map +1 -0
- package/dist/utils/flow-xml-generator.d.ts +41 -0
- package/dist/utils/flow-xml-generator.d.ts.map +1 -0
- package/dist/utils/flow-xml-generator.js +258 -0
- package/dist/utils/flow-xml-generator.js.map +1 -0
- package/dist/utils/logger.d.ts +13 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +51 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/mcp-auth-middleware.d.ts +58 -0
- package/dist/utils/mcp-auth-middleware.d.ts.map +1 -0
- package/dist/utils/mcp-auth-middleware.js +227 -0
- package/dist/utils/mcp-auth-middleware.js.map +1 -0
- package/dist/utils/mcp-config-manager.d.ts +126 -0
- package/dist/utils/mcp-config-manager.d.ts.map +1 -0
- package/dist/utils/mcp-config-manager.js +209 -0
- package/dist/utils/mcp-config-manager.js.map +1 -0
- package/dist/utils/mcp-server-manager.d.ts +91 -0
- package/dist/utils/mcp-server-manager.d.ts.map +1 -0
- package/dist/utils/mcp-server-manager.js +338 -0
- package/dist/utils/mcp-server-manager.js.map +1 -0
- package/dist/utils/scope-utils.d.ts +72 -0
- package/dist/utils/scope-utils.d.ts.map +1 -0
- package/dist/utils/scope-utils.js +386 -0
- package/dist/utils/scope-utils.js.map +1 -0
- package/dist/utils/servicenow-client.d.ts +233 -0
- package/dist/utils/servicenow-client.d.ts.map +1 -0
- package/dist/utils/servicenow-client.js +1465 -0
- package/dist/utils/servicenow-client.js.map +1 -0
- package/dist/utils/snow-oauth-old.d.ts +65 -0
- package/dist/utils/snow-oauth-old.d.ts.map +1 -0
- package/dist/utils/snow-oauth-old.js +345 -0
- package/dist/utils/snow-oauth-old.js.map +1 -0
- package/dist/utils/snow-oauth.d.ts +85 -0
- package/dist/utils/snow-oauth.d.ts.map +1 -0
- package/dist/utils/snow-oauth.js +512 -0
- package/dist/utils/snow-oauth.js.map +1 -0
- package/dist/utils/template-engine.d.ts +76 -0
- package/dist/utils/template-engine.d.ts.map +1 -0
- package/dist/utils/template-engine.js +391 -0
- package/dist/utils/template-engine.js.map +1 -0
- package/dist/version.d.ts +35 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +72 -0
- package/dist/version.js.map +1 -0
- package/mcp-wrapper.sh +12 -0
- package/package.json +77 -0
- package/reports/swarm-auto-centralized-1752649029776.json +13 -0
- package/scripts/postinstall.js +30 -0
- package/scripts/setup-mcp.js +89 -0
|
@@ -0,0 +1,448 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Scope Manager for ServiceNow Artifact Deployment
|
|
4
|
+
*
|
|
5
|
+
* Centralized management of deployment scopes, providing intelligent
|
|
6
|
+
* scope selection and management capabilities.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.ScopeManager = void 0;
|
|
10
|
+
const global_scope_strategy_js_1 = require("../strategies/global-scope-strategy.js");
|
|
11
|
+
const servicenow_client_js_1 = require("../utils/servicenow-client.js");
|
|
12
|
+
const logger_js_1 = require("../utils/logger.js");
|
|
13
|
+
class ScopeManager {
|
|
14
|
+
constructor(options = {}) {
|
|
15
|
+
this.scopeCache = new Map();
|
|
16
|
+
this.strategy = new global_scope_strategy_js_1.GlobalScopeStrategy();
|
|
17
|
+
this.client = new servicenow_client_js_1.ServiceNowClient();
|
|
18
|
+
this.logger = new logger_js_1.Logger('ScopeManager');
|
|
19
|
+
this.options = {
|
|
20
|
+
defaultScope: global_scope_strategy_js_1.ScopeType.GLOBAL,
|
|
21
|
+
allowFallback: true,
|
|
22
|
+
validatePermissions: true,
|
|
23
|
+
enableMigration: false,
|
|
24
|
+
...options
|
|
25
|
+
};
|
|
26
|
+
this.logger.info('ScopeManager initialized', { options: this.options });
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Make intelligent scope decision based on context
|
|
30
|
+
*/
|
|
31
|
+
async makeScopeDecision(context) {
|
|
32
|
+
const cacheKey = this.generateCacheKey(context);
|
|
33
|
+
// Check cache first
|
|
34
|
+
if (this.scopeCache.has(cacheKey)) {
|
|
35
|
+
const cached = this.scopeCache.get(cacheKey);
|
|
36
|
+
this.logger.info('Using cached scope decision', { selectedScope: cached.selectedScope });
|
|
37
|
+
return cached;
|
|
38
|
+
}
|
|
39
|
+
this.logger.info('Making scope decision', {
|
|
40
|
+
artifactType: context.artifactType,
|
|
41
|
+
artifactName: context.artifactData.name,
|
|
42
|
+
environmentType: context.environmentType
|
|
43
|
+
});
|
|
44
|
+
// Step 1: Analyze artifact requirements
|
|
45
|
+
const scopeConfig = await this.strategy.analyzeScopeRequirements(context.artifactType, context.artifactData);
|
|
46
|
+
// Step 2: Apply user preferences and project scope
|
|
47
|
+
const adjustedConfig = this.applyUserPreferences(scopeConfig, context);
|
|
48
|
+
// Step 3: Validate permissions if enabled
|
|
49
|
+
let validationResult = { isValid: true, issues: [], warnings: [] };
|
|
50
|
+
if (this.options.validatePermissions) {
|
|
51
|
+
validationResult = await this.strategy.validateScopePermissions(adjustedConfig);
|
|
52
|
+
}
|
|
53
|
+
// Step 4: Make final decision
|
|
54
|
+
const decision = this.makeFinalDecision(adjustedConfig, validationResult, context);
|
|
55
|
+
// Step 5: Cache the decision
|
|
56
|
+
this.scopeCache.set(cacheKey, decision);
|
|
57
|
+
this.logger.info('Scope decision made', {
|
|
58
|
+
selectedScope: decision.selectedScope,
|
|
59
|
+
confidence: decision.confidence,
|
|
60
|
+
rationale: decision.rationale
|
|
61
|
+
});
|
|
62
|
+
return decision;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Deploy artifact using intelligent scope management
|
|
66
|
+
*/
|
|
67
|
+
async deployWithScopeManagement(context) {
|
|
68
|
+
this.logger.info('Starting scope-managed deployment', {
|
|
69
|
+
artifactType: context.artifactType,
|
|
70
|
+
artifactName: context.artifactData.name
|
|
71
|
+
});
|
|
72
|
+
// Make scope decision
|
|
73
|
+
const decision = await this.makeScopeDecision(context);
|
|
74
|
+
// Prepare deployment configuration
|
|
75
|
+
const deploymentConfig = {
|
|
76
|
+
type: decision.selectedScope,
|
|
77
|
+
fallbackToGlobal: this.options.allowFallback && decision.fallbackScope !== undefined,
|
|
78
|
+
permissions: decision.validationResult.permissions || []
|
|
79
|
+
};
|
|
80
|
+
// Add environment-specific configurations
|
|
81
|
+
if (context.environmentType === 'production') {
|
|
82
|
+
deploymentConfig.permissions?.push('production_deployment');
|
|
83
|
+
}
|
|
84
|
+
// Add compliance requirements
|
|
85
|
+
if (context.complianceRequirements) {
|
|
86
|
+
deploymentConfig.permissions?.push(...context.complianceRequirements);
|
|
87
|
+
}
|
|
88
|
+
// Execute deployment
|
|
89
|
+
const result = await this.strategy.deployWithGlobalScope(context.artifactType, context.artifactData, deploymentConfig);
|
|
90
|
+
// Log deployment outcome
|
|
91
|
+
this.logger.info('Scope-managed deployment completed', {
|
|
92
|
+
success: result.success,
|
|
93
|
+
actualScope: result.scope,
|
|
94
|
+
fallbackApplied: result.fallbackApplied
|
|
95
|
+
});
|
|
96
|
+
return result;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Migrate existing artifacts to optimal scope
|
|
100
|
+
*/
|
|
101
|
+
async migrateArtifactsToOptimalScope(artifacts) {
|
|
102
|
+
if (!this.options.enableMigration) {
|
|
103
|
+
throw new Error('Migration is not enabled in scope manager options');
|
|
104
|
+
}
|
|
105
|
+
this.logger.info('Starting artifact migration', { count: artifacts.length });
|
|
106
|
+
const migrationResults = {
|
|
107
|
+
totalArtifacts: artifacts.length,
|
|
108
|
+
successful: 0,
|
|
109
|
+
failed: 0,
|
|
110
|
+
skipped: 0,
|
|
111
|
+
details: []
|
|
112
|
+
};
|
|
113
|
+
for (const artifact of artifacts) {
|
|
114
|
+
try {
|
|
115
|
+
const context = {
|
|
116
|
+
artifactType: artifact.sys_class_name || artifact.type,
|
|
117
|
+
artifactData: artifact,
|
|
118
|
+
environmentType: 'development' // Safe default for migration
|
|
119
|
+
};
|
|
120
|
+
const decision = await this.makeScopeDecision(context);
|
|
121
|
+
// Only migrate if the optimal scope is different from current
|
|
122
|
+
if (this.shouldMigrateArtifact(artifact, decision)) {
|
|
123
|
+
const migrationResult = await this.migrateArtifact(artifact, decision);
|
|
124
|
+
migrationResults.details.push(migrationResult);
|
|
125
|
+
if (migrationResult.success) {
|
|
126
|
+
migrationResults.successful++;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
migrationResults.failed++;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
migrationResults.skipped++;
|
|
134
|
+
migrationResults.details.push({
|
|
135
|
+
artifactId: artifact.sys_id,
|
|
136
|
+
name: artifact.name,
|
|
137
|
+
currentScope: artifact.sys_scope,
|
|
138
|
+
recommendedScope: decision.selectedScope,
|
|
139
|
+
action: 'skipped',
|
|
140
|
+
reason: 'Already in optimal scope'
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
catch (error) {
|
|
145
|
+
migrationResults.failed++;
|
|
146
|
+
migrationResults.details.push({
|
|
147
|
+
artifactId: artifact.sys_id,
|
|
148
|
+
name: artifact.name,
|
|
149
|
+
action: 'failed',
|
|
150
|
+
error: error instanceof Error ? error.message : String(error)
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
this.logger.info('Migration completed', {
|
|
155
|
+
successful: migrationResults.successful,
|
|
156
|
+
failed: migrationResults.failed,
|
|
157
|
+
skipped: migrationResults.skipped
|
|
158
|
+
});
|
|
159
|
+
return migrationResults;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Get scope recommendations for a project
|
|
163
|
+
*/
|
|
164
|
+
async getProjectScopeRecommendations(projectArtifacts) {
|
|
165
|
+
this.logger.info('Generating project scope recommendations', {
|
|
166
|
+
artifactCount: projectArtifacts.length
|
|
167
|
+
});
|
|
168
|
+
const recommendations = {
|
|
169
|
+
overallScope: global_scope_strategy_js_1.ScopeType.GLOBAL,
|
|
170
|
+
confidence: 0,
|
|
171
|
+
artifactBreakdown: {
|
|
172
|
+
global: 0,
|
|
173
|
+
application: 0,
|
|
174
|
+
mixed: 0
|
|
175
|
+
},
|
|
176
|
+
recommendations: [],
|
|
177
|
+
risks: [],
|
|
178
|
+
benefits: []
|
|
179
|
+
};
|
|
180
|
+
const decisions = [];
|
|
181
|
+
// Analyze each artifact
|
|
182
|
+
for (const artifact of projectArtifacts) {
|
|
183
|
+
const context = {
|
|
184
|
+
artifactType: artifact.sys_class_name || artifact.type,
|
|
185
|
+
artifactData: artifact
|
|
186
|
+
};
|
|
187
|
+
const decision = await this.makeScopeDecision(context);
|
|
188
|
+
decisions.push(decision);
|
|
189
|
+
if (decision.selectedScope === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
190
|
+
recommendations.artifactBreakdown.global++;
|
|
191
|
+
}
|
|
192
|
+
else if (decision.selectedScope === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
193
|
+
recommendations.artifactBreakdown.application++;
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
recommendations.artifactBreakdown.mixed++;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
// Calculate overall recommendation
|
|
200
|
+
const globalRatio = recommendations.artifactBreakdown.global / projectArtifacts.length;
|
|
201
|
+
const applicationRatio = recommendations.artifactBreakdown.application / projectArtifacts.length;
|
|
202
|
+
if (globalRatio > 0.6) {
|
|
203
|
+
recommendations.overallScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
204
|
+
recommendations.confidence = globalRatio;
|
|
205
|
+
recommendations.recommendations.push('Deploy entire project to global scope for consistency');
|
|
206
|
+
recommendations.benefits.push('Simplified deployment and maintenance');
|
|
207
|
+
recommendations.benefits.push('Better cross-application integration');
|
|
208
|
+
}
|
|
209
|
+
else if (applicationRatio > 0.6) {
|
|
210
|
+
recommendations.overallScope = global_scope_strategy_js_1.ScopeType.APPLICATION;
|
|
211
|
+
recommendations.confidence = applicationRatio;
|
|
212
|
+
recommendations.recommendations.push('Deploy project to dedicated application scope');
|
|
213
|
+
recommendations.benefits.push('Better isolation and security');
|
|
214
|
+
recommendations.benefits.push('Easier application lifecycle management');
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
recommendations.overallScope = global_scope_strategy_js_1.ScopeType.AUTO;
|
|
218
|
+
recommendations.confidence = 0.5;
|
|
219
|
+
recommendations.recommendations.push('Use mixed scope strategy - deploy artifacts to optimal individual scopes');
|
|
220
|
+
recommendations.risks.push('Mixed scope may complicate maintenance');
|
|
221
|
+
}
|
|
222
|
+
// Add specific recommendations
|
|
223
|
+
if (recommendations.artifactBreakdown.global > 0) {
|
|
224
|
+
recommendations.recommendations.push('Ensure global scope permissions are available');
|
|
225
|
+
}
|
|
226
|
+
if (recommendations.artifactBreakdown.application > 0) {
|
|
227
|
+
recommendations.recommendations.push('Consider creating dedicated application scope');
|
|
228
|
+
}
|
|
229
|
+
return recommendations;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Validate scope configuration
|
|
233
|
+
*/
|
|
234
|
+
async validateScopeConfiguration(config) {
|
|
235
|
+
this.logger.info('Validating scope configuration', { type: config.type });
|
|
236
|
+
const validation = {
|
|
237
|
+
isValid: true,
|
|
238
|
+
issues: [],
|
|
239
|
+
warnings: [],
|
|
240
|
+
recommendations: []
|
|
241
|
+
};
|
|
242
|
+
// Validate scope type
|
|
243
|
+
if (!Object.values(global_scope_strategy_js_1.ScopeType).includes(config.type)) {
|
|
244
|
+
validation.isValid = false;
|
|
245
|
+
validation.issues.push(`Invalid scope type: ${config.type}`);
|
|
246
|
+
}
|
|
247
|
+
// Validate application scope requirements
|
|
248
|
+
if (config.type === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
249
|
+
if (!config.applicationId && !config.applicationName) {
|
|
250
|
+
validation.warnings.push('Application scope specified but no application ID or name provided');
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
// Validate permissions
|
|
254
|
+
if (config.permissions && config.permissions.length > 0) {
|
|
255
|
+
const permissionValidation = await this.validatePermissions(config.permissions);
|
|
256
|
+
if (!permissionValidation.isValid) {
|
|
257
|
+
validation.isValid = false;
|
|
258
|
+
validation.issues.push(...permissionValidation.issues);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
// Validate global domain
|
|
262
|
+
if (config.type === global_scope_strategy_js_1.ScopeType.GLOBAL && config.globalDomain !== 'global') {
|
|
263
|
+
validation.warnings.push('Global scope should use "global" domain');
|
|
264
|
+
}
|
|
265
|
+
return validation;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Clear scope cache
|
|
269
|
+
*/
|
|
270
|
+
clearScopeCache() {
|
|
271
|
+
this.scopeCache.clear();
|
|
272
|
+
this.logger.info('Scope cache cleared');
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Get scope statistics
|
|
276
|
+
*/
|
|
277
|
+
getScopeStatistics() {
|
|
278
|
+
const stats = {
|
|
279
|
+
cacheSize: this.scopeCache.size,
|
|
280
|
+
scopeDistribution: {
|
|
281
|
+
global: 0,
|
|
282
|
+
application: 0,
|
|
283
|
+
auto: 0
|
|
284
|
+
},
|
|
285
|
+
averageConfidence: 0
|
|
286
|
+
};
|
|
287
|
+
let totalConfidence = 0;
|
|
288
|
+
for (const decision of this.scopeCache.values()) {
|
|
289
|
+
totalConfidence += decision.confidence;
|
|
290
|
+
if (decision.selectedScope === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
291
|
+
stats.scopeDistribution.global++;
|
|
292
|
+
}
|
|
293
|
+
else if (decision.selectedScope === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
294
|
+
stats.scopeDistribution.application++;
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
stats.scopeDistribution.auto++;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
stats.averageConfidence = this.scopeCache.size > 0 ? totalConfidence / this.scopeCache.size : 0;
|
|
301
|
+
return stats;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Private helper methods
|
|
305
|
+
*/
|
|
306
|
+
generateCacheKey(context) {
|
|
307
|
+
return `${context.artifactType}:${context.artifactData.name}:${context.environmentType || 'default'}`;
|
|
308
|
+
}
|
|
309
|
+
applyUserPreferences(config, context) {
|
|
310
|
+
if (!context.userPreferences) {
|
|
311
|
+
return config;
|
|
312
|
+
}
|
|
313
|
+
// Override with user preferences
|
|
314
|
+
return {
|
|
315
|
+
...config,
|
|
316
|
+
...context.userPreferences,
|
|
317
|
+
// Preserve original analysis for fallback
|
|
318
|
+
originalType: config.type
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
makeFinalDecision(config, validation, context) {
|
|
322
|
+
let selectedScope = config.type;
|
|
323
|
+
let confidence = 0.8;
|
|
324
|
+
let rationale = 'Based on artifact analysis';
|
|
325
|
+
let fallbackScope;
|
|
326
|
+
// Apply validation results
|
|
327
|
+
if (!validation.isValid) {
|
|
328
|
+
if (validation.canCreateGlobal && config.type === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
329
|
+
selectedScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
330
|
+
fallbackScope = global_scope_strategy_js_1.ScopeType.APPLICATION;
|
|
331
|
+
confidence = 0.6;
|
|
332
|
+
rationale = 'Fallback to global scope due to permission issues';
|
|
333
|
+
}
|
|
334
|
+
else if (validation.canCreateScoped && config.type === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
335
|
+
selectedScope = global_scope_strategy_js_1.ScopeType.APPLICATION;
|
|
336
|
+
fallbackScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
337
|
+
confidence = 0.6;
|
|
338
|
+
rationale = 'Fallback to application scope due to permission issues';
|
|
339
|
+
}
|
|
340
|
+
else {
|
|
341
|
+
confidence = 0.3;
|
|
342
|
+
rationale = 'Limited options due to permission constraints';
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
// Apply environment-specific rules
|
|
346
|
+
if (context.environmentType === 'production') {
|
|
347
|
+
// Production deployments prefer global scope for stability
|
|
348
|
+
if (selectedScope === global_scope_strategy_js_1.ScopeType.APPLICATION && validation.canCreateGlobal) {
|
|
349
|
+
selectedScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
350
|
+
confidence = Math.max(confidence, 0.7);
|
|
351
|
+
rationale += ' (production environment preference)';
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
// Apply project scope preferences
|
|
355
|
+
if (context.projectScope) {
|
|
356
|
+
if (context.projectScope === global_scope_strategy_js_1.ScopeType.GLOBAL && validation.canCreateGlobal) {
|
|
357
|
+
selectedScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
358
|
+
confidence = Math.max(confidence, 0.8);
|
|
359
|
+
rationale += ' (project scope preference)';
|
|
360
|
+
}
|
|
361
|
+
else if (context.projectScope === global_scope_strategy_js_1.ScopeType.APPLICATION && validation.canCreateScoped) {
|
|
362
|
+
selectedScope = global_scope_strategy_js_1.ScopeType.APPLICATION;
|
|
363
|
+
confidence = Math.max(confidence, 0.8);
|
|
364
|
+
rationale += ' (project scope preference)';
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
const recommendations = [];
|
|
368
|
+
// Generate recommendations
|
|
369
|
+
if (confidence < 0.5) {
|
|
370
|
+
recommendations.push('Consider reviewing permissions or scope configuration');
|
|
371
|
+
}
|
|
372
|
+
if (fallbackScope) {
|
|
373
|
+
recommendations.push(`Consider ${fallbackScope} scope as alternative`);
|
|
374
|
+
}
|
|
375
|
+
if (validation.warnings && validation.warnings.length > 0) {
|
|
376
|
+
recommendations.push(...validation.warnings);
|
|
377
|
+
}
|
|
378
|
+
return {
|
|
379
|
+
selectedScope,
|
|
380
|
+
confidence,
|
|
381
|
+
rationale,
|
|
382
|
+
fallbackScope,
|
|
383
|
+
validationResult: validation,
|
|
384
|
+
recommendations
|
|
385
|
+
};
|
|
386
|
+
}
|
|
387
|
+
shouldMigrateArtifact(artifact, decision) {
|
|
388
|
+
const currentScope = artifact.sys_scope;
|
|
389
|
+
const recommendedScope = decision.selectedScope;
|
|
390
|
+
// Don't migrate if confidence is too low
|
|
391
|
+
if (decision.confidence < 0.7) {
|
|
392
|
+
return false;
|
|
393
|
+
}
|
|
394
|
+
// Don't migrate if already in optimal scope
|
|
395
|
+
if (currentScope === 'global' && recommendedScope === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
396
|
+
return false;
|
|
397
|
+
}
|
|
398
|
+
if (currentScope !== 'global' && recommendedScope === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
399
|
+
return false;
|
|
400
|
+
}
|
|
401
|
+
return true;
|
|
402
|
+
}
|
|
403
|
+
async migrateArtifact(artifact, decision) {
|
|
404
|
+
// This is a simplified migration - in practice, this would involve
|
|
405
|
+
// complex operations like dependency checking, data migration, etc.
|
|
406
|
+
const migrationResult = {
|
|
407
|
+
artifactId: artifact.sys_id,
|
|
408
|
+
name: artifact.name,
|
|
409
|
+
currentScope: artifact.sys_scope,
|
|
410
|
+
targetScope: decision.selectedScope,
|
|
411
|
+
success: false,
|
|
412
|
+
action: 'migrate',
|
|
413
|
+
details: {}
|
|
414
|
+
};
|
|
415
|
+
try {
|
|
416
|
+
// Create new artifact in target scope
|
|
417
|
+
const newArtifactData = {
|
|
418
|
+
...artifact,
|
|
419
|
+
sys_scope: decision.selectedScope === global_scope_strategy_js_1.ScopeType.GLOBAL ? 'global' : decision.selectedScope,
|
|
420
|
+
name: `${artifact.name}_migrated`,
|
|
421
|
+
sys_id: undefined // Let ServiceNow generate new ID
|
|
422
|
+
};
|
|
423
|
+
const deploymentResult = await this.strategy.deployWithGlobalScope(artifact.sys_class_name || artifact.type, newArtifactData, { type: decision.selectedScope });
|
|
424
|
+
migrationResult.success = deploymentResult.success;
|
|
425
|
+
migrationResult.details = deploymentResult;
|
|
426
|
+
// In a real implementation, you would also:
|
|
427
|
+
// 1. Update references to the old artifact
|
|
428
|
+
// 2. Deactivate or delete the old artifact
|
|
429
|
+
// 3. Verify the migration worked correctly
|
|
430
|
+
}
|
|
431
|
+
catch (error) {
|
|
432
|
+
migrationResult.success = false;
|
|
433
|
+
migrationResult.details = { error: error instanceof Error ? error.message : String(error) };
|
|
434
|
+
}
|
|
435
|
+
return migrationResult;
|
|
436
|
+
}
|
|
437
|
+
async validatePermissions(permissions) {
|
|
438
|
+
// Simplified permission validation
|
|
439
|
+
// In practice, this would check actual ServiceNow permissions
|
|
440
|
+
return {
|
|
441
|
+
isValid: true,
|
|
442
|
+
issues: [],
|
|
443
|
+
warnings: []
|
|
444
|
+
};
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
exports.ScopeManager = ScopeManager;
|
|
448
|
+
//# sourceMappingURL=scope-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope-manager.js","sourceRoot":"","sources":["../../src/managers/scope-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* MCP Server Wrapper for ES Module compatibility
|
|
4
|
+
* This wrapper dynamically imports the ES module MCP SDK
|
|
5
|
+
*/
|
|
6
|
+
export declare function createMCPServer(serverScript: string): Promise<import("child_process").ChildProcessByStdio<null, import("stream").Readable, import("stream").Readable>>;
|
|
7
|
+
export declare function startMCPServerProcess(serverPath: string): Promise<any>;
|
|
8
|
+
//# sourceMappingURL=mcp-wrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-wrapper.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-wrapper.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,wBAAsB,eAAe,CAAC,YAAY,EAAE,MAAM,oHAgBzD;AAGD,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,gBAkB7D"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* MCP Server Wrapper for ES Module compatibility
|
|
5
|
+
* This wrapper dynamically imports the ES module MCP SDK
|
|
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.createMCPServer = createMCPServer;
|
|
42
|
+
exports.startMCPServerProcess = startMCPServerProcess;
|
|
43
|
+
async function createMCPServer(serverScript) {
|
|
44
|
+
try {
|
|
45
|
+
// Dynamically import the ES module
|
|
46
|
+
const { spawn } = await Promise.resolve().then(() => __importStar(require('child_process')));
|
|
47
|
+
// Use node --experimental-modules for ES module support
|
|
48
|
+
const process = spawn('node', ['--experimental-modules', serverScript], {
|
|
49
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
50
|
+
detached: true
|
|
51
|
+
});
|
|
52
|
+
return process;
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
console.error('Failed to create MCP server:', error);
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// Alternative: Create a simple Node.js script that works with CommonJS
|
|
60
|
+
async function startMCPServerProcess(serverPath) {
|
|
61
|
+
const { spawn } = require('child_process');
|
|
62
|
+
// Start with explicit ES module support
|
|
63
|
+
const process = spawn('node', [
|
|
64
|
+
'--experimental-json-modules',
|
|
65
|
+
'--experimental-modules',
|
|
66
|
+
serverPath
|
|
67
|
+
], {
|
|
68
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
69
|
+
detached: true,
|
|
70
|
+
env: {
|
|
71
|
+
...process.env,
|
|
72
|
+
NODE_OPTIONS: '--experimental-modules'
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
return process;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=mcp-wrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-wrapper.js","sourceRoot":"","sources":["../../src/mcp/mcp-wrapper.ts"],"names":[],"mappings":";;AACA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,0CAgBC;AAGD,sDAkBC;AArCM,KAAK,UAAU,eAAe,CAAC,YAAoB;IACxD,IAAI,CAAC;QACH,mCAAmC;QACnC,MAAM,EAAE,KAAK,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;QAEhD,wDAAwD;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,wBAAwB,EAAE,YAAY,CAAC,EAAE;YACtE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,uEAAuE;AAChE,KAAK,UAAU,qBAAqB,CAAC,UAAkB;IAC5D,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3C,wCAAwC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE;QAC5B,6BAA6B;QAC7B,wBAAwB;QACxB,UAAU;KACX,EAAE;QACD,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;QACjC,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,YAAY,EAAE,wBAAwB;SACvC;KACF,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* ServiceNow Automation MCP Server
|
|
4
|
+
* Handles scheduled tasks, events, and automated processes
|
|
5
|
+
* NO HARDCODED VALUES - All schedules and events discovered dynamically
|
|
6
|
+
*/
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=servicenow-automation-mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"servicenow-automation-mcp.d.ts","sourceRoot":"","sources":["../../src/mcp/servicenow-automation-mcp.ts"],"names":[],"mappings":";AACA;;;;GAIG"}
|