snow-flow 8.39.6 → 8.39.8
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/README.md +2 -2
- package/dist/cli/auth.d.ts.map +1 -1
- package/dist/cli/auth.js +3 -13
- package/dist/cli/auth.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +0 -3
- package/dist/cli.js.map +1 -1
- package/dist/compliance/advanced-compliance-system.d.ts +8 -0
- package/dist/compliance/advanced-compliance-system.d.ts.map +1 -1
- package/dist/compliance/advanced-compliance-system.js +29 -0
- package/dist/compliance/advanced-compliance-system.js.map +1 -1
- package/dist/documentation/self-documenting-system.d.ts +5 -0
- package/dist/documentation/self-documenting-system.d.ts.map +1 -1
- package/dist/documentation/self-documenting-system.js +23 -1
- package/dist/documentation/self-documenting-system.js.map +1 -1
- package/dist/healing/self-healing-system.d.ts +5 -0
- package/dist/healing/self-healing-system.d.ts.map +1 -1
- package/dist/healing/self-healing-system.js +26 -1
- package/dist/healing/self-healing-system.js.map +1 -1
- package/dist/mcp/servicenow-machine-learning-mcp.d.ts +30 -0
- package/dist/mcp/servicenow-machine-learning-mcp.d.ts.map +1 -1
- package/dist/mcp/servicenow-machine-learning-mcp.js +140 -1
- package/dist/mcp/servicenow-machine-learning-mcp.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.d.ts +4 -0
- package/dist/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.js +225 -18
- package/dist/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.d.ts +7 -3
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.js +257 -68
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_discover_platform_tables.d.ts +6 -0
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_discover_platform_tables.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_discover_platform_tables.js +201 -44
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_discover_platform_tables.js.map +1 -1
- package/dist/mcp/shared/reliable-memory-manager.d.ts.map +1 -1
- package/dist/mcp/shared/reliable-memory-manager.js +10 -4
- package/dist/mcp/shared/reliable-memory-manager.js.map +1 -1
- package/dist/optimization/cost-optimization-engine.d.ts +6 -0
- package/dist/optimization/cost-optimization-engine.d.ts.map +1 -1
- package/dist/optimization/cost-optimization-engine.js +35 -2
- package/dist/optimization/cost-optimization-engine.js.map +1 -1
- package/dist/utils/logger.d.ts +6 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +44 -19
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/sync-mcp-configs.d.ts.map +1 -1
- package/dist/utils/sync-mcp-configs.js +0 -9
- package/dist/utils/sync-mcp-configs.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* snow_fuzzy_search
|
|
4
|
+
*
|
|
5
|
+
* Perform intelligent fuzzy search across ServiceNow tables using
|
|
6
|
+
* multiple matching strategies: LIKE queries, CONTAINS, and
|
|
7
|
+
* Levenshtein-based relevance scoring.
|
|
4
8
|
*/
|
|
5
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
10
|
exports.author = exports.version = exports.toolDefinition = void 0;
|
|
@@ -9,11 +13,11 @@ const auth_js_1 = require("../../shared/auth.js");
|
|
|
9
13
|
const error_handler_js_1 = require("../../shared/error-handler.js");
|
|
10
14
|
exports.toolDefinition = {
|
|
11
15
|
name: 'snow_fuzzy_search',
|
|
12
|
-
description: 'Perform fuzzy search across tables',
|
|
16
|
+
description: 'Perform fuzzy search across tables with relevance scoring. Uses LIKE/CONTAINS queries and ranks results by similarity to the search query.',
|
|
13
17
|
// Metadata for tool discovery (not sent to LLM)
|
|
14
18
|
category: 'advanced',
|
|
15
19
|
subcategory: 'search',
|
|
16
|
-
use_cases: ['fuzzy-search', 'text-search', 'search'],
|
|
20
|
+
use_cases: ['fuzzy-search', 'text-search', 'search', 'find-similar'],
|
|
17
21
|
complexity: 'intermediate',
|
|
18
22
|
frequency: 'medium',
|
|
19
23
|
// Permission enforcement
|
|
@@ -23,36 +27,239 @@ exports.toolDefinition = {
|
|
|
23
27
|
inputSchema: {
|
|
24
28
|
type: 'object',
|
|
25
29
|
properties: {
|
|
26
|
-
query: {
|
|
27
|
-
|
|
28
|
-
|
|
30
|
+
query: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
description: 'Search query - will match against name, label, and description fields'
|
|
33
|
+
},
|
|
34
|
+
tables: {
|
|
35
|
+
type: 'array',
|
|
36
|
+
items: { type: 'string' },
|
|
37
|
+
description: 'Tables to search (e.g., ["sys_db_object", "sys_script_include"])'
|
|
38
|
+
},
|
|
39
|
+
search_fields: {
|
|
40
|
+
type: 'array',
|
|
41
|
+
items: { type: 'string' },
|
|
42
|
+
description: 'Fields to search within each table (default: name, label, description)',
|
|
43
|
+
default: ['name', 'label', 'description']
|
|
44
|
+
},
|
|
45
|
+
threshold: {
|
|
46
|
+
type: 'number',
|
|
47
|
+
default: 0.3,
|
|
48
|
+
description: 'Minimum similarity score (0-1) to include in results. Lower = more results.'
|
|
49
|
+
},
|
|
50
|
+
limit: {
|
|
51
|
+
type: 'number',
|
|
52
|
+
default: 20,
|
|
53
|
+
description: 'Maximum results per table'
|
|
54
|
+
}
|
|
29
55
|
},
|
|
30
56
|
required: ['query', 'tables']
|
|
31
57
|
}
|
|
32
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Calculate Levenshtein distance between two strings
|
|
61
|
+
*/
|
|
62
|
+
function levenshteinDistance(str1, str2) {
|
|
63
|
+
const s1 = str1.toLowerCase();
|
|
64
|
+
const s2 = str2.toLowerCase();
|
|
65
|
+
if (s1.length === 0)
|
|
66
|
+
return s2.length;
|
|
67
|
+
if (s2.length === 0)
|
|
68
|
+
return s1.length;
|
|
69
|
+
const matrix = [];
|
|
70
|
+
for (let i = 0; i <= s1.length; i++) {
|
|
71
|
+
matrix[i] = [i];
|
|
72
|
+
}
|
|
73
|
+
for (let j = 0; j <= s2.length; j++) {
|
|
74
|
+
matrix[0][j] = j;
|
|
75
|
+
}
|
|
76
|
+
for (let i = 1; i <= s1.length; i++) {
|
|
77
|
+
for (let j = 1; j <= s2.length; j++) {
|
|
78
|
+
const cost = s1[i - 1] === s2[j - 1] ? 0 : 1;
|
|
79
|
+
matrix[i][j] = Math.min(matrix[i - 1][j] + 1, // deletion
|
|
80
|
+
matrix[i][j - 1] + 1, // insertion
|
|
81
|
+
matrix[i - 1][j - 1] + cost // substitution
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return matrix[s1.length][s2.length];
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Calculate similarity score (0-1) between query and a field value
|
|
89
|
+
*/
|
|
90
|
+
function calculateSimilarity(query, value) {
|
|
91
|
+
if (!value)
|
|
92
|
+
return 0;
|
|
93
|
+
const q = query.toLowerCase();
|
|
94
|
+
const v = value.toLowerCase();
|
|
95
|
+
// Exact match
|
|
96
|
+
if (v === q)
|
|
97
|
+
return 1.0;
|
|
98
|
+
// Contains exact query
|
|
99
|
+
if (v.includes(q))
|
|
100
|
+
return 0.9;
|
|
101
|
+
// Query contains the value (partial match)
|
|
102
|
+
if (q.includes(v))
|
|
103
|
+
return 0.7;
|
|
104
|
+
// Word-level matching
|
|
105
|
+
const queryWords = q.split(/[\s_\-\.]+/);
|
|
106
|
+
const valueWords = v.split(/[\s_\-\.]+/);
|
|
107
|
+
let matchedWords = 0;
|
|
108
|
+
for (const qWord of queryWords) {
|
|
109
|
+
for (const vWord of valueWords) {
|
|
110
|
+
if (vWord.includes(qWord) || qWord.includes(vWord)) {
|
|
111
|
+
matchedWords++;
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
const wordScore = queryWords.length > 0 ? matchedWords / queryWords.length : 0;
|
|
117
|
+
if (wordScore > 0.5)
|
|
118
|
+
return 0.5 + (wordScore * 0.3);
|
|
119
|
+
// Levenshtein-based similarity for close matches
|
|
120
|
+
const distance = levenshteinDistance(q, v);
|
|
121
|
+
const maxLen = Math.max(q.length, v.length);
|
|
122
|
+
const levenshteinScore = maxLen > 0 ? 1 - (distance / maxLen) : 0;
|
|
123
|
+
return levenshteinScore;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Calculate overall relevance score for a record
|
|
127
|
+
*/
|
|
128
|
+
function calculateRelevanceScore(query, record, searchFields) {
|
|
129
|
+
let maxScore = 0;
|
|
130
|
+
let matchedField = '';
|
|
131
|
+
for (const field of searchFields) {
|
|
132
|
+
const value = record[field];
|
|
133
|
+
if (value) {
|
|
134
|
+
const score = calculateSimilarity(query, String(value));
|
|
135
|
+
if (score > maxScore) {
|
|
136
|
+
maxScore = score;
|
|
137
|
+
matchedField = field;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return { score: maxScore, matchedField };
|
|
142
|
+
}
|
|
33
143
|
async function execute(args, context) {
|
|
34
|
-
const { query, tables, threshold = 0.
|
|
144
|
+
const { query, tables, search_fields = ['name', 'label', 'description'], threshold = 0.3, limit = 20 } = args;
|
|
145
|
+
if (!query || query.trim().length === 0) {
|
|
146
|
+
return (0, error_handler_js_1.createErrorResult)('Search query cannot be empty');
|
|
147
|
+
}
|
|
148
|
+
if (!tables || tables.length === 0) {
|
|
149
|
+
return (0, error_handler_js_1.createErrorResult)('At least one table must be specified');
|
|
150
|
+
}
|
|
35
151
|
try {
|
|
36
152
|
const client = await (0, auth_js_1.getAuthenticatedClient)(context);
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
153
|
+
const allResults = [];
|
|
154
|
+
const tableResults = [];
|
|
155
|
+
// Build LIKE query for each search field
|
|
156
|
+
// This gets candidates from ServiceNow, then we score them locally
|
|
157
|
+
const buildSearchQuery = (fields, searchTerm) => {
|
|
158
|
+
const conditions = fields.map(field => `${field}LIKE${searchTerm}`);
|
|
159
|
+
return conditions.join('^NQ'); // NQ = OR in ServiceNow
|
|
160
|
+
};
|
|
161
|
+
// Search each table in parallel for better performance
|
|
162
|
+
const searchPromises = tables.map(async (table) => {
|
|
163
|
+
try {
|
|
164
|
+
// First, check what fields exist on this table
|
|
165
|
+
const searchQuery = buildSearchQuery(search_fields, query);
|
|
166
|
+
const response = await client.get(`/api/now/table/${table}`, {
|
|
167
|
+
params: {
|
|
168
|
+
sysparm_query: searchQuery,
|
|
169
|
+
sysparm_limit: limit * 2, // Get more candidates for scoring
|
|
170
|
+
sysparm_fields: `sys_id,${search_fields.join(',')},sys_created_on,sys_updated_on`
|
|
171
|
+
},
|
|
172
|
+
timeout: 15000 // 15 second timeout per table
|
|
173
|
+
});
|
|
174
|
+
if (!response.data.result || response.data.result.length === 0) {
|
|
175
|
+
return { table, results: [], count: 0 };
|
|
43
176
|
}
|
|
44
|
-
|
|
45
|
-
|
|
177
|
+
// Score and filter results
|
|
178
|
+
const scoredResults = response.data.result
|
|
179
|
+
.map((record) => {
|
|
180
|
+
const { score, matchedField } = calculateRelevanceScore(query, record, search_fields);
|
|
181
|
+
return {
|
|
182
|
+
...record,
|
|
183
|
+
_relevance_score: score,
|
|
184
|
+
_matched_field: matchedField,
|
|
185
|
+
_table: table
|
|
186
|
+
};
|
|
187
|
+
})
|
|
188
|
+
.filter((r) => r._relevance_score >= threshold)
|
|
189
|
+
.sort((a, b) => b._relevance_score - a._relevance_score)
|
|
190
|
+
.slice(0, limit);
|
|
191
|
+
return {
|
|
192
|
+
table,
|
|
193
|
+
results: scoredResults,
|
|
194
|
+
count: scoredResults.length
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
catch (tableError) {
|
|
198
|
+
// Return empty results for tables that error (might not exist or no access)
|
|
199
|
+
return {
|
|
200
|
+
table,
|
|
201
|
+
results: [],
|
|
202
|
+
count: 0,
|
|
203
|
+
error: tableError.message
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
const searchResults = await Promise.all(searchPromises);
|
|
208
|
+
// Aggregate results
|
|
209
|
+
for (const result of searchResults) {
|
|
210
|
+
if (result.count > 0) {
|
|
211
|
+
tableResults.push({
|
|
212
|
+
table: result.table,
|
|
213
|
+
count: result.count,
|
|
214
|
+
matches: result.results.map((r) => ({
|
|
215
|
+
sys_id: r.sys_id,
|
|
216
|
+
name: r.name || r.label || r.sys_id,
|
|
217
|
+
label: r.label,
|
|
218
|
+
description: r.description,
|
|
219
|
+
relevance_score: Math.round(r._relevance_score * 100) / 100,
|
|
220
|
+
matched_field: r._matched_field,
|
|
221
|
+
created: r.sys_created_on,
|
|
222
|
+
updated: r.sys_updated_on
|
|
223
|
+
}))
|
|
224
|
+
});
|
|
225
|
+
allResults.push(...result.results);
|
|
226
|
+
}
|
|
227
|
+
else if (result.error) {
|
|
228
|
+
tableResults.push({
|
|
229
|
+
table: result.table,
|
|
230
|
+
count: 0,
|
|
231
|
+
error: result.error
|
|
232
|
+
});
|
|
233
|
+
}
|
|
46
234
|
}
|
|
235
|
+
// Sort all results by relevance score
|
|
236
|
+
allResults.sort((a, b) => b._relevance_score - a._relevance_score);
|
|
237
|
+
const totalMatches = allResults.length;
|
|
238
|
+
const tablesSearched = tables.length;
|
|
239
|
+
const tablesWithResults = tableResults.filter(t => t.count > 0).length;
|
|
47
240
|
return (0, error_handler_js_1.createSuccessResult)({
|
|
48
|
-
results,
|
|
49
|
-
count: results.length,
|
|
50
241
|
query,
|
|
51
|
-
threshold
|
|
242
|
+
threshold,
|
|
243
|
+
summary: {
|
|
244
|
+
total_matches: totalMatches,
|
|
245
|
+
tables_searched: tablesSearched,
|
|
246
|
+
tables_with_results: tablesWithResults
|
|
247
|
+
},
|
|
248
|
+
results_by_table: tableResults,
|
|
249
|
+
top_matches: allResults.slice(0, 10).map((r) => ({
|
|
250
|
+
table: r._table,
|
|
251
|
+
sys_id: r.sys_id,
|
|
252
|
+
name: r.name || r.label || r.sys_id,
|
|
253
|
+
relevance_score: Math.round(r._relevance_score * 100) / 100,
|
|
254
|
+
matched_field: r._matched_field
|
|
255
|
+
})),
|
|
256
|
+
message: totalMatches > 0
|
|
257
|
+
? `Found ${totalMatches} matches for "${query}" across ${tablesWithResults} table(s)`
|
|
258
|
+
: `No matches found for "${query}" above threshold ${threshold}`
|
|
52
259
|
});
|
|
53
260
|
}
|
|
54
261
|
catch (error) {
|
|
55
|
-
return (0, error_handler_js_1.createErrorResult)(error.message);
|
|
262
|
+
return (0, error_handler_js_1.createErrorResult)(`Fuzzy search failed: ${error.message}`);
|
|
56
263
|
}
|
|
57
264
|
}
|
|
58
265
|
exports.version = '1.0.0';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snow_fuzzy_search.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"snow_fuzzy_search.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/advanced/snow_fuzzy_search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* snow_search_artifacts - Search across development artifacts
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Search ServiceNow development artifacts (widgets, pages, scripts, flows, etc.)
|
|
5
|
+
* with parallel queries and optional table search.
|
|
6
|
+
*
|
|
7
|
+
* NOTE: This tool searches DEVELOPMENT ARTIFACTS, not data tables.
|
|
8
|
+
* For searching data in tables, use snow_query_table or snow_fuzzy_search.
|
|
6
9
|
*/
|
|
7
10
|
import { MCPToolDefinition, ServiceNowContext, ToolResult } from '../../shared/types.js';
|
|
8
11
|
export declare const toolDefinition: MCPToolDefinition;
|
|
9
12
|
export declare function execute(args: any, context: ServiceNowContext): Promise<ToolResult>;
|
|
13
|
+
export declare const toolDefinitionAlias: MCPToolDefinition;
|
|
10
14
|
export declare const version = "1.0.0";
|
|
11
15
|
export declare const author = "Snow-Flow SDK Migration";
|
|
12
16
|
//# sourceMappingURL=snow_comprehensive_search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snow_comprehensive_search.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"snow_comprehensive_search.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/operations/snow_comprehensive_search.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,iBAsD5B,CAAC;AA+MF,wBAAsB,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA6ExF;AAGD,eAAO,MAAM,mBAAmB,EAAE,iBAIjC,CAAC;AAEF,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,MAAM,4BAA4B,CAAC"}
|