snow-flow 1.1.14 → 1.1.15
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/dist/version.js +14 -1
- package/package.json +1 -1
- package/scripts/setup-mcp.js +9 -5
- package/test-fresh-install/.mcp.json +106 -0
- package/test-fresh-install/README.md +23 -0
package/dist/version.js
CHANGED
|
@@ -7,12 +7,16 @@ exports.VERSION_INFO = exports.VERSION = void 0;
|
|
|
7
7
|
exports.getVersionString = getVersionString;
|
|
8
8
|
exports.getLatestFeatures = getLatestFeatures;
|
|
9
9
|
exports.isLatestVersion = isLatestVersion;
|
|
10
|
-
exports.VERSION = '1.1.
|
|
10
|
+
exports.VERSION = '1.1.15';
|
|
11
11
|
exports.VERSION_INFO = {
|
|
12
12
|
version: exports.VERSION,
|
|
13
13
|
name: 'Snow-Flow',
|
|
14
14
|
description: 'ServiceNow Multi-Agent Development Framework',
|
|
15
15
|
features: {
|
|
16
|
+
'1.1.15': [
|
|
17
|
+
'Fixed MCP server paths for global npm installations',
|
|
18
|
+
'MCP servers now correctly load from global npm directory'
|
|
19
|
+
],
|
|
16
20
|
'1.1.14': [
|
|
17
21
|
'Fixed version display in global installation',
|
|
18
22
|
'Dynamic version control instead of hardcoded values'
|
|
@@ -35,6 +39,15 @@ exports.VERSION_INFO = {
|
|
|
35
39
|
]
|
|
36
40
|
},
|
|
37
41
|
changelog: {
|
|
42
|
+
'1.1.15': {
|
|
43
|
+
date: '2025-01-19',
|
|
44
|
+
changes: [
|
|
45
|
+
'Fixed MCP server paths for global npm installations',
|
|
46
|
+
'setup-mcp.js now correctly distinguishes between package and project directories',
|
|
47
|
+
'MCP configuration points to correct global npm module paths',
|
|
48
|
+
'Resolves issue where MCP servers could not be found after npm install -g'
|
|
49
|
+
]
|
|
50
|
+
},
|
|
38
51
|
'1.1.14': {
|
|
39
52
|
date: '2025-01-19',
|
|
40
53
|
changes: [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "snow-flow",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.15",
|
|
4
4
|
"description": "Multi-Agent ServiceNow Development Platform - Create, manage, and deploy ServiceNow artifacts using natural language and AI agents",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "commonjs",
|
package/scripts/setup-mcp.js
CHANGED
|
@@ -19,11 +19,14 @@ const isGlobalInstall = __dirname.includes('node_modules/snow-flow') ||
|
|
|
19
19
|
__dirname.includes('.nvm/versions/node');
|
|
20
20
|
|
|
21
21
|
// For global installs, use the package directory, not cwd
|
|
22
|
-
const
|
|
22
|
+
const packageRoot = isGlobalInstall
|
|
23
23
|
? path.resolve(__dirname, '..') // Go up from scripts/ to package root
|
|
24
24
|
: process.cwd();
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
// The actual project root where we're running the command
|
|
27
|
+
const projectRoot = process.cwd();
|
|
28
|
+
|
|
29
|
+
const templatePath = path.join(packageRoot, '.mcp.json.template');
|
|
27
30
|
const mcpFilePath = path.join(projectRoot, '.mcp.json');
|
|
28
31
|
|
|
29
32
|
// Check if template exists
|
|
@@ -48,7 +51,7 @@ const template = fs.readFileSync(templatePath, 'utf8');
|
|
|
48
51
|
|
|
49
52
|
// Replace placeholders
|
|
50
53
|
const replacements = {
|
|
51
|
-
'{{PROJECT_ROOT}}':
|
|
54
|
+
'{{PROJECT_ROOT}}': packageRoot, // Use packageRoot for MCP server paths
|
|
52
55
|
'{{SNOW_INSTANCE}}': process.env.SNOW_INSTANCE || 'your-instance.service-now.com',
|
|
53
56
|
'{{SNOW_CLIENT_ID}}': process.env.SNOW_CLIENT_ID || 'your-oauth-client-id',
|
|
54
57
|
'{{SNOW_CLIENT_SECRET}}': process.env.SNOW_CLIENT_SECRET || 'your-oauth-client-secret',
|
|
@@ -81,14 +84,15 @@ const mcpServerFiles = [
|
|
|
81
84
|
];
|
|
82
85
|
|
|
83
86
|
mcpServerFiles.forEach(file => {
|
|
84
|
-
const filePath = path.join(
|
|
87
|
+
const filePath = path.join(packageRoot, 'dist/mcp', file);
|
|
85
88
|
if (fs.existsSync(filePath)) {
|
|
86
89
|
fs.chmodSync(filePath, '755');
|
|
87
90
|
}
|
|
88
91
|
});
|
|
89
92
|
|
|
90
93
|
console.log('✅ Generated .mcp.json with dynamic configuration');
|
|
91
|
-
console.log('📁 Project
|
|
94
|
+
console.log('📁 Project directory:', projectRoot);
|
|
95
|
+
console.log('📦 Package directory:', packageRoot);
|
|
92
96
|
console.log('🔧 Environment variables:', requiredEnvVars.filter(v => process.env[v]).length + '/' + requiredEnvVars.length + ' configured');
|
|
93
97
|
console.log('🔐 Made MCP server files executable');
|
|
94
98
|
console.log('📝 Using node + args format for Claude Code compatibility');
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
{
|
|
2
|
+
"servers": {
|
|
3
|
+
"servicenow-deployment": {
|
|
4
|
+
"command": "node",
|
|
5
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-deployment-mcp.js"],
|
|
6
|
+
"env": {
|
|
7
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
8
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
9
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"servicenow-flow-composer": {
|
|
13
|
+
"command": "node",
|
|
14
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-flow-composer-mcp.js"],
|
|
15
|
+
"env": {
|
|
16
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
17
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
18
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"servicenow-update-set": {
|
|
22
|
+
"command": "node",
|
|
23
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-update-set-mcp.js"],
|
|
24
|
+
"env": {
|
|
25
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
26
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
27
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"servicenow-intelligent": {
|
|
31
|
+
"command": "node",
|
|
32
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-intelligent-mcp.js"],
|
|
33
|
+
"env": {
|
|
34
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
35
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
36
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"servicenow-graph-memory": {
|
|
40
|
+
"command": "node",
|
|
41
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-graph-memory-mcp.js"],
|
|
42
|
+
"env": {
|
|
43
|
+
"NEO4J_URI": "bolt://localhost:7687",
|
|
44
|
+
"NEO4J_USER": "neo4j",
|
|
45
|
+
"NEO4J_PASSWORD": "password",
|
|
46
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
47
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
48
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"servicenow-operations": {
|
|
52
|
+
"command": "node",
|
|
53
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-operations-mcp.js"],
|
|
54
|
+
"env": {
|
|
55
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
56
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
57
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"servicenow-platform-development": {
|
|
61
|
+
"command": "node",
|
|
62
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-platform-development-mcp.js"],
|
|
63
|
+
"env": {
|
|
64
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
65
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
66
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"servicenow-integration": {
|
|
70
|
+
"command": "node",
|
|
71
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-integration-mcp.js"],
|
|
72
|
+
"env": {
|
|
73
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
74
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
75
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
"servicenow-automation": {
|
|
79
|
+
"command": "node",
|
|
80
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-automation-mcp.js"],
|
|
81
|
+
"env": {
|
|
82
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
83
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
84
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
"servicenow-security-compliance": {
|
|
88
|
+
"command": "node",
|
|
89
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-security-compliance-mcp.js"],
|
|
90
|
+
"env": {
|
|
91
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
92
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
93
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"servicenow-reporting-analytics": {
|
|
97
|
+
"command": "node",
|
|
98
|
+
"args": ["/Users/nielsvanderwerf/Projects/servicenow_multiagent/dist/mcp/servicenow-reporting-analytics-mcp.js"],
|
|
99
|
+
"env": {
|
|
100
|
+
"SNOW_INSTANCE": "dev198027.service-now.com/",
|
|
101
|
+
"SNOW_CLIENT_ID": "0664245521cf423ba1989e4c875b18de",
|
|
102
|
+
"SNOW_CLIENT_SECRET": "Welkom123"
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Snow-Flow Project
|
|
2
|
+
|
|
3
|
+
This is a Snow-Flow project for ServiceNow multi-agent development.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
1. Configure your ServiceNow credentials in .env
|
|
8
|
+
2. Run: `snow-flow auth login`
|
|
9
|
+
3. Start your first swarm: `snow-flow swarm "create a widget for incident management"`
|
|
10
|
+
|
|
11
|
+
## Project Structure
|
|
12
|
+
|
|
13
|
+
- `.claude/` - Claude configuration and commands
|
|
14
|
+
- `.swarm/` - Swarm coordination and memory
|
|
15
|
+
- `memory/` - Persistent memory for agents
|
|
16
|
+
- `coordination/` - Agent coordination data
|
|
17
|
+
- `servicenow/` - Generated ServiceNow artifacts
|
|
18
|
+
|
|
19
|
+
## Documentation
|
|
20
|
+
|
|
21
|
+
- Configuration: `.claude/config.json`
|
|
22
|
+
- Memory system: `.swarm/memory.db`
|
|
23
|
+
- Project structure: `.claude/commands/`
|