nowaikit 4.1.5 → 4.4.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/README.md +4 -3
- package/dist/embed.d.ts +37 -0
- package/dist/embed.d.ts.map +1 -0
- package/dist/embed.js +75 -0
- package/dist/embed.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +52 -2
- package/dist/server.js.map +1 -1
- package/dist/servicenow/client.d.ts +13 -0
- package/dist/servicenow/client.d.ts.map +1 -1
- package/dist/servicenow/client.js +52 -1
- package/dist/servicenow/client.js.map +1 -1
- package/dist/servicenow/instances.d.ts.map +1 -1
- package/dist/servicenow/instances.js +20 -0
- package/dist/servicenow/instances.js.map +1 -1
- package/dist/tools/blast-radius.d.ts +75 -0
- package/dist/tools/blast-radius.d.ts.map +1 -0
- package/dist/tools/blast-radius.js +185 -0
- package/dist/tools/blast-radius.js.map +1 -0
- package/dist/tools/catalog.d.ts.map +1 -1
- package/dist/tools/catalog.js +20 -3
- package/dist/tools/catalog.js.map +1 -1
- package/dist/tools/core.js +2 -2
- package/dist/tools/core.js.map +1 -1
- package/dist/tools/docs.d.ts +51 -0
- package/dist/tools/docs.d.ts.map +1 -0
- package/dist/tools/docs.js +274 -0
- package/dist/tools/docs.js.map +1 -0
- package/dist/tools/index.d.ts +188 -796
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +23 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/knowledge.d.ts.map +1 -1
- package/dist/tools/knowledge.js +9 -3
- package/dist/tools/knowledge.js.map +1 -1
- package/dist/tools/local-sync.d.ts +55 -0
- package/dist/tools/local-sync.d.ts.map +1 -0
- package/dist/tools/local-sync.js +210 -0
- package/dist/tools/local-sync.js.map +1 -0
- package/dist/tools/ml.d.ts +1 -1
- package/dist/tools/now-assist.d.ts +11 -145
- package/dist/tools/now-assist.d.ts.map +1 -1
- package/dist/tools/now-assist.js +50 -110
- package/dist/tools/now-assist.js.map +1 -1
- package/dist/tools/reporting.d.ts +55 -17
- package/dist/tools/reporting.d.ts.map +1 -1
- package/dist/tools/reporting.js +24 -15
- package/dist/tools/reporting.js.map +1 -1
- package/dist/tools-manifest.json +250 -95
- package/dist/transport/index.d.ts.map +1 -1
- package/dist/transport/index.js +18 -2
- package/dist/transport/index.js.map +1 -1
- package/dist/utils/permissions.d.ts +10 -5
- package/dist/utils/permissions.d.ts.map +1 -1
- package/dist/utils/permissions.js +43 -20
- package/dist/utils/permissions.js.map +1 -1
- package/dist/utils/request-context.d.ts +28 -0
- package/dist/utils/request-context.d.ts.map +1 -0
- package/dist/utils/request-context.js +49 -0
- package/dist/utils/request-context.js.map +1 -0
- package/package.json +8 -3
package/README.md
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
<img src="docs/assets/banner.svg" alt="NowAIKit
|
|
3
|
+
<img src="docs/assets/banner.svg" alt="NowAIKit ServiceNow MCP Server" width="100%"/>
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/nowaikit)
|
|
6
6
|
[](docs/TOOLS.md)
|
|
7
7
|
[](https://modelcontextprotocol.io)
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
|
|
10
|
-
# NowAIKit
|
|
10
|
+
# NowAIKit: ServiceNow MCP Server
|
|
11
11
|
|
|
12
|
-
**Connect Claude, ChatGPT, Gemini, Cursor, Copilot
|
|
12
|
+
**Connect Claude, ChatGPT, Gemini, Cursor, Copilot, or any AI, to ServiceNow.**
|
|
13
13
|
|
|
14
14
|
450+ tools across ITSM, ITOM, CMDB, HRSD, CSM, Flow Designer, scripting & portal. Read, build, query and automate any instance in plain English.
|
|
15
15
|
|
|
@@ -68,6 +68,7 @@ No instance? Grab a free Personal Developer Instance at **[developer.servicenow.
|
|
|
68
68
|
- *"Create a business rule on the incident table that…"*
|
|
69
69
|
- *"Run the ATF suite for the HR onboarding flow."*
|
|
70
70
|
- *"What's the CMDB health for our prod CIs?"*
|
|
71
|
+
- *"Look up GlideRecord.addEncodedQuery in the ServiceNow docs and show the syntax."*
|
|
71
72
|
|
|
72
73
|
**Read-only by default.** Write, scripting and CMDB changes are opt-in flags — prod can't be modified by accident.
|
|
73
74
|
|
package/dist/embed.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embed API — run the NowAIKit MCP core in-process (no HTTP transport).
|
|
3
|
+
*
|
|
4
|
+
* Lets a trusted host (e.g. the NowAIKit Gateway running serverless) execute MCP
|
|
5
|
+
* tool calls directly instead of proxying over HTTP — so the whole thing can be a
|
|
6
|
+
* single serverless unit with no standing core to host.
|
|
7
|
+
*
|
|
8
|
+
* Additive and dependency-free of any transport: it reuses the existing
|
|
9
|
+
* `getTools` / `executeTool`, the per-user `ServiceNowClient.withUser()`, and the
|
|
10
|
+
* delegated-auth context. Behaviour (result shape, permission gating) matches the
|
|
11
|
+
* HTTP server's CallTool handler.
|
|
12
|
+
*/
|
|
13
|
+
import { getTools, executeTool } from './tools/index.js';
|
|
14
|
+
import { ServiceNowClient } from './servicenow/client.js';
|
|
15
|
+
import { runWithDelegatedAuth, getDelegatedAuth, type DelegatedAuth } from './utils/request-context.js';
|
|
16
|
+
export { getTools, executeTool, ServiceNowClient, runWithDelegatedAuth, getDelegatedAuth };
|
|
17
|
+
export type { DelegatedAuth };
|
|
18
|
+
export type { ServiceNowConfig } from './servicenow/types.js';
|
|
19
|
+
interface JsonRpcMessage {
|
|
20
|
+
jsonrpc?: string;
|
|
21
|
+
id?: string | number | null;
|
|
22
|
+
method?: string;
|
|
23
|
+
params?: Record<string, unknown>;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Handle a single MCP JSON-RPC message in-process.
|
|
27
|
+
*
|
|
28
|
+
* @param message the JSON-RPC request (initialize / tools/list / tools/call / notifications/*)
|
|
29
|
+
* @param ctx the per-user ServiceNow client (already `.withUser(token)`) and the
|
|
30
|
+
* resolved delegated policy (drives permission gating)
|
|
31
|
+
* @returns the JSON-RPC response object, or `undefined` for notifications (no reply)
|
|
32
|
+
*/
|
|
33
|
+
export declare function handleEmbeddedMcp(message: JsonRpcMessage, ctx: {
|
|
34
|
+
client: ServiceNowClient;
|
|
35
|
+
delegated?: DelegatedAuth;
|
|
36
|
+
}): Promise<Record<string, unknown> | undefined>;
|
|
37
|
+
//# sourceMappingURL=embed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAIxG,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC;AAC3F,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAgBD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,SAAS,CAAC,EAAE,aAAa,CAAA;CAAE,GAC3D,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAsC9C"}
|
package/dist/embed.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embed API — run the NowAIKit MCP core in-process (no HTTP transport).
|
|
3
|
+
*
|
|
4
|
+
* Lets a trusted host (e.g. the NowAIKit Gateway running serverless) execute MCP
|
|
5
|
+
* tool calls directly instead of proxying over HTTP — so the whole thing can be a
|
|
6
|
+
* single serverless unit with no standing core to host.
|
|
7
|
+
*
|
|
8
|
+
* Additive and dependency-free of any transport: it reuses the existing
|
|
9
|
+
* `getTools` / `executeTool`, the per-user `ServiceNowClient.withUser()`, and the
|
|
10
|
+
* delegated-auth context. Behaviour (result shape, permission gating) matches the
|
|
11
|
+
* HTTP server's CallTool handler.
|
|
12
|
+
*/
|
|
13
|
+
import { getTools, executeTool } from './tools/index.js';
|
|
14
|
+
import { ServiceNowClient } from './servicenow/client.js';
|
|
15
|
+
import { runWithDelegatedAuth, getDelegatedAuth } from './utils/request-context.js';
|
|
16
|
+
import { VERSION, SERVER_NAME } from './utils/version.js';
|
|
17
|
+
import { ServiceNowError } from './utils/errors.js';
|
|
18
|
+
export { getTools, executeTool, ServiceNowClient, runWithDelegatedAuth, getDelegatedAuth };
|
|
19
|
+
/** Format a tool result exactly like the HTTP server's CallTool handler. */
|
|
20
|
+
function formatToolResult(result) {
|
|
21
|
+
const structured = typeof result === 'object' && result !== null && !Array.isArray(result)
|
|
22
|
+
? { structuredContent: result }
|
|
23
|
+
: {};
|
|
24
|
+
return {
|
|
25
|
+
content: [
|
|
26
|
+
{ type: 'text', text: typeof result === 'string' ? result : JSON.stringify(result, null, 2) },
|
|
27
|
+
],
|
|
28
|
+
...structured,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Handle a single MCP JSON-RPC message in-process.
|
|
33
|
+
*
|
|
34
|
+
* @param message the JSON-RPC request (initialize / tools/list / tools/call / notifications/*)
|
|
35
|
+
* @param ctx the per-user ServiceNow client (already `.withUser(token)`) and the
|
|
36
|
+
* resolved delegated policy (drives permission gating)
|
|
37
|
+
* @returns the JSON-RPC response object, or `undefined` for notifications (no reply)
|
|
38
|
+
*/
|
|
39
|
+
export async function handleEmbeddedMcp(message, ctx) {
|
|
40
|
+
const { id = null, method, params } = message;
|
|
41
|
+
if (!method || method.startsWith('notifications/'))
|
|
42
|
+
return undefined;
|
|
43
|
+
if (method === 'initialize') {
|
|
44
|
+
return {
|
|
45
|
+
jsonrpc: '2.0',
|
|
46
|
+
id,
|
|
47
|
+
result: {
|
|
48
|
+
protocolVersion: params?.['protocolVersion'] ?? '2025-06-18',
|
|
49
|
+
capabilities: { tools: {} },
|
|
50
|
+
serverInfo: { name: SERVER_NAME, version: VERSION },
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
if (method === 'tools/list') {
|
|
55
|
+
return { jsonrpc: '2.0', id, result: { tools: getTools() } };
|
|
56
|
+
}
|
|
57
|
+
if (method === 'tools/call') {
|
|
58
|
+
const name = String(params?.['name'] ?? '');
|
|
59
|
+
const args = params?.['arguments'] ?? {};
|
|
60
|
+
const run = async () => formatToolResult(await executeTool(ctx.client, name, args));
|
|
61
|
+
try {
|
|
62
|
+
const result = ctx.delegated ? await runWithDelegatedAuth(ctx.delegated, run) : await run();
|
|
63
|
+
return { jsonrpc: '2.0', id, result };
|
|
64
|
+
}
|
|
65
|
+
catch (err) {
|
|
66
|
+
const text = err instanceof ServiceNowError
|
|
67
|
+
? `Error: ${err.message} (Code: ${err.code})`
|
|
68
|
+
: `Error executing tool: ${err instanceof Error ? err.message : 'Unknown error'}`;
|
|
69
|
+
// MCP convention: tool errors come back as a result with isError, not a protocol error.
|
|
70
|
+
return { jsonrpc: '2.0', id, result: { content: [{ type: 'text', text }], isError: true } };
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return { jsonrpc: '2.0', id, error: { code: -32601, message: `Method not found: ${method}` } };
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=embed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embed.js","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAoDnE,wBAAgB,YAAY,IAAI,MAAM,CA4LrC"}
|
package/dist/server.js
CHANGED
|
@@ -9,6 +9,7 @@ import { getPrompts, resolvePromptAsync } from './prompts/index.js';
|
|
|
9
9
|
import { logger } from './utils/logging.js';
|
|
10
10
|
import { ServiceNowError } from './utils/errors.js';
|
|
11
11
|
import { connectTransport } from './transport/index.js';
|
|
12
|
+
import { getDelegatedAuth } from './utils/request-context.js';
|
|
12
13
|
import { VERSION, SERVER_NAME } from './utils/version.js';
|
|
13
14
|
dotenv.config();
|
|
14
15
|
// Require at least one instance to be configured
|
|
@@ -28,6 +29,15 @@ const DESTRUCTIVE_TOOLS = new Set([
|
|
|
28
29
|
function isDestructiveTool(name) {
|
|
29
30
|
return DESTRUCTIVE_TOOLS.has(name) || /^delete_|^retire_/.test(name);
|
|
30
31
|
}
|
|
32
|
+
// Tools that can take a while — emit MCP progress notifications (only when the
|
|
33
|
+
// client supplies a progressToken; otherwise nothing changes).
|
|
34
|
+
const LONG_RUNNING_TOOLS = new Set([
|
|
35
|
+
'run_discovery_scan', 'run_atf_suite', 'run_atf_test', 'cmdb_reconcile', 'cmdb_impact_analysis',
|
|
36
|
+
'bulk_create_records', 'import_cmdb_data', 'run_transform_map', 'scan_vulnerabilities',
|
|
37
|
+
'run_security_playbook', 'execute_playbook', 'compare_instances',
|
|
38
|
+
'export_update_set', 'preview_update_set', 'check_table_completeness', 'analyze_data_quality',
|
|
39
|
+
'ml_train_incident_classifier', 'ml_train_change_risk', 'ml_train_anomaly_detector', 'ml_forecast_incidents',
|
|
40
|
+
]);
|
|
31
41
|
export function createServer() {
|
|
32
42
|
const server = new Server({
|
|
33
43
|
name: SERVER_NAME,
|
|
@@ -53,7 +63,16 @@ export function createServer() {
|
|
|
53
63
|
throw new ServiceNowError(`Unknown tool: ${name}`, 'UNKNOWN_TOOL');
|
|
54
64
|
}
|
|
55
65
|
const instanceName = args?.['instance'];
|
|
56
|
-
const
|
|
66
|
+
const baseClient = instanceManager.getClient(instanceName);
|
|
67
|
+
// DELEGATED_AUTH: run as the per-request identity AND (for multi-tenant
|
|
68
|
+
// hosting) against the caller's own instance, both carried in the delegated
|
|
69
|
+
// context headers. When a token is present we also honour its instanceUrl,
|
|
70
|
+
// so one shared server serves many customers with no per-customer config.
|
|
71
|
+
// No-op in normal single-user mode.
|
|
72
|
+
const delegatedAuth = getDelegatedAuth();
|
|
73
|
+
const client = delegatedAuth?.bearerToken
|
|
74
|
+
? baseClient.withUser({ bearerToken: delegatedAuth.bearerToken, instanceUrl: delegatedAuth.instanceUrl })
|
|
75
|
+
: baseClient;
|
|
57
76
|
const toolArgs = (args || {});
|
|
58
77
|
// ─── Elicitation: confirm destructive ops when the client supports it ──────
|
|
59
78
|
// Only triggers for real (non-dry-run) destructive operations and only when
|
|
@@ -78,7 +97,38 @@ export function createServer() {
|
|
|
78
97
|
}
|
|
79
98
|
}
|
|
80
99
|
const { executeTool } = await import('./tools/index.js');
|
|
81
|
-
|
|
100
|
+
// MCP progress notifications: if the client passed a progressToken and this
|
|
101
|
+
// is a long-running tool, emit periodic heartbeats so the UI shows activity.
|
|
102
|
+
// Purely additive — when no token is sent the path below behaves as before.
|
|
103
|
+
const progressToken = request.params._meta?.progressToken;
|
|
104
|
+
const trackProgress = progressToken !== undefined && LONG_RUNNING_TOOLS.has(name);
|
|
105
|
+
let heartbeat;
|
|
106
|
+
if (trackProgress) {
|
|
107
|
+
let pct = 0;
|
|
108
|
+
const sendProgress = (progress, message) => server.notification({
|
|
109
|
+
method: 'notifications/progress',
|
|
110
|
+
params: { progressToken, progress, total: 100, message },
|
|
111
|
+
}).catch(() => { });
|
|
112
|
+
await sendProgress(0, `Starting ${name}…`);
|
|
113
|
+
heartbeat = setInterval(() => {
|
|
114
|
+
pct = Math.min(pct + 7, 92);
|
|
115
|
+
void sendProgress(pct, `Running ${name}…`);
|
|
116
|
+
}, 1500);
|
|
117
|
+
}
|
|
118
|
+
let result;
|
|
119
|
+
try {
|
|
120
|
+
result = await executeTool(client, name, toolArgs);
|
|
121
|
+
}
|
|
122
|
+
finally {
|
|
123
|
+
if (heartbeat)
|
|
124
|
+
clearInterval(heartbeat);
|
|
125
|
+
if (trackProgress) {
|
|
126
|
+
await server.notification({
|
|
127
|
+
method: 'notifications/progress',
|
|
128
|
+
params: { progressToken, progress: 100, total: 100, message: `${name} complete` },
|
|
129
|
+
}).catch(() => { });
|
|
130
|
+
}
|
|
131
|
+
}
|
|
82
132
|
// Structured output: include the raw object so capable clients get typed
|
|
83
133
|
// content, while keeping the text block for backward compatibility.
|
|
84
134
|
const structured = typeof result === 'object' && result !== null && !Array.isArray(result)
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export declare class ServiceNowClient {
|
|
|
24
24
|
withUser(options: {
|
|
25
25
|
sysId?: string;
|
|
26
26
|
bearerToken?: string;
|
|
27
|
+
instanceUrl?: string;
|
|
27
28
|
}): ServiceNowClient;
|
|
28
29
|
/**
|
|
29
30
|
* Authenticate with ServiceNow using OAuth or Basic Auth
|
|
@@ -116,6 +117,18 @@ export declare class ServiceNowClient {
|
|
|
116
117
|
* Call Now Assist / Generative AI endpoints (latest release)
|
|
117
118
|
*/
|
|
118
119
|
callNowAssist(endpoint: string, payload: Record<string, any>): Promise<any>;
|
|
120
|
+
/**
|
|
121
|
+
* Get a Service Catalog item with its variables (label, mandatory, type, choices)
|
|
122
|
+
* via the Service Catalog API. The Table API (getRecord) does not expose variables,
|
|
123
|
+
* so callers cannot tell which fields are required before ordering.
|
|
124
|
+
*/
|
|
125
|
+
getServiceCatalogItem(sysId: string): Promise<any>;
|
|
126
|
+
/**
|
|
127
|
+
* Read Performance Analytics scorecard/indicator data via the PA Scorecards API
|
|
128
|
+
* (GET /api/now/pa/scorecards). This is the supported read API; the legacy
|
|
129
|
+
* /api/now/pa/widget/{sys_id} route is the widget renderer, not a data API.
|
|
130
|
+
*/
|
|
131
|
+
getPaScorecards(params: Record<string, string>): Promise<any>;
|
|
119
132
|
/**
|
|
120
133
|
* Run aggregate/stats query on a table (ServiceNow Reporting API)
|
|
121
134
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/servicenow/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EAGpB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAyBpB,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAmBnD;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,WAAW,CAAC,CAA4B;IAChD,OAAO,CAAC,WAAW,CAAC,CAA4B;IAChD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAS;IAEjC,sEAAsE;IACtE,OAAO,CAAC,oBAAoB,CAAC,CAAS;IACtC,yEAAyE;IACzE,OAAO,CAAC,kBAAkB,CAAC,CAAS;IAEpC,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAS;gBAEjB,MAAM,EAAE,gBAAgB;IAapC;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,gBAAgB;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/servicenow/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,29 @@ export class ServiceNowClient {
|
|
|
70
70
|
withUser(options) {
|
|
71
71
|
const copy = Object.create(Object.getPrototypeOf(this));
|
|
72
72
|
Object.assign(copy, this);
|
|
73
|
+
// Multi-tenant: route this request to the caller's own instance (from the
|
|
74
|
+
// delegated context), instead of the server-configured one. SSRF-guarded to
|
|
75
|
+
// ServiceNow hosts (override the suffix allowlist with MT_INSTANCE_ALLOW).
|
|
76
|
+
if (options.instanceUrl) {
|
|
77
|
+
const url = options.instanceUrl.trim().replace(/\/$/, '');
|
|
78
|
+
let host = '';
|
|
79
|
+
try {
|
|
80
|
+
host = new URL(url).host.toLowerCase();
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
host = '';
|
|
84
|
+
}
|
|
85
|
+
const suffixes = (process.env.MT_INSTANCE_ALLOW || '.service-now.com')
|
|
86
|
+
.split(',').map(s => s.trim().toLowerCase()).filter(Boolean);
|
|
87
|
+
const okHost = host !== '' && suffixes.some(s => {
|
|
88
|
+
const suf = s.startsWith('.') ? s : '.' + s;
|
|
89
|
+
return host === suf.slice(1) || host.endsWith(suf);
|
|
90
|
+
});
|
|
91
|
+
if (!/^https:\/\//i.test(url) || !okHost) {
|
|
92
|
+
throw new ServiceNowError(`Delegated instance URL not allowed: ${options.instanceUrl}`, 'VALIDATION_ERROR');
|
|
93
|
+
}
|
|
94
|
+
copy.baseUrl = url;
|
|
95
|
+
}
|
|
73
96
|
if (options.sysId) {
|
|
74
97
|
copy.authMode = 'impersonation';
|
|
75
98
|
copy.impersonateUserSysId = options.sysId;
|
|
@@ -84,6 +107,11 @@ export class ServiceNowClient {
|
|
|
84
107
|
* Authenticate with ServiceNow using OAuth or Basic Auth
|
|
85
108
|
*/
|
|
86
109
|
async authenticate() {
|
|
110
|
+
// Per-user mode carries the user's own bearer token (delegated auth) —
|
|
111
|
+
// no service-account token acquisition needed.
|
|
112
|
+
if (this.authMode === 'per-user' && this.perUserBearerToken) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
87
115
|
if (this.authMethod === 'basic') {
|
|
88
116
|
// Basic auth doesn't require token acquisition
|
|
89
117
|
return;
|
|
@@ -714,6 +742,29 @@ export class ServiceNowClient {
|
|
|
714
742
|
throw new ServiceNowError(`Now Assist call failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'NOW_ASSIST_ERROR');
|
|
715
743
|
}
|
|
716
744
|
}
|
|
745
|
+
/**
|
|
746
|
+
* Get a Service Catalog item with its variables (label, mandatory, type, choices)
|
|
747
|
+
* via the Service Catalog API. The Table API (getRecord) does not expose variables,
|
|
748
|
+
* so callers cannot tell which fields are required before ordering.
|
|
749
|
+
*/
|
|
750
|
+
async getServiceCatalogItem(sysId) {
|
|
751
|
+
await this.authenticate();
|
|
752
|
+
const url = `${this.baseUrl}/api/sn_sc/servicecatalog/items/${sysId}`;
|
|
753
|
+
const response = await this.request(url, { method: 'GET' });
|
|
754
|
+
return (response && response.result) || response;
|
|
755
|
+
}
|
|
756
|
+
/**
|
|
757
|
+
* Read Performance Analytics scorecard/indicator data via the PA Scorecards API
|
|
758
|
+
* (GET /api/now/pa/scorecards). This is the supported read API; the legacy
|
|
759
|
+
* /api/now/pa/widget/{sys_id} route is the widget renderer, not a data API.
|
|
760
|
+
*/
|
|
761
|
+
async getPaScorecards(params) {
|
|
762
|
+
await this.authenticate();
|
|
763
|
+
const qs = new URLSearchParams(params).toString();
|
|
764
|
+
const url = `${this.baseUrl}/api/now/pa/scorecards${qs ? `?${qs}` : ''}`;
|
|
765
|
+
const response = await this.request(url, { method: 'GET' });
|
|
766
|
+
return (response && response.result) || response;
|
|
767
|
+
}
|
|
717
768
|
/**
|
|
718
769
|
* Run aggregate/stats query on a table (ServiceNow Reporting API)
|
|
719
770
|
*/
|
|
@@ -904,7 +955,7 @@ export class ServiceNowClient {
|
|
|
904
955
|
async naturalLanguageUpdate(_instruction, _table) {
|
|
905
956
|
// This is a simplified implementation - a full version would parse
|
|
906
957
|
// the instruction to extract record identifier and field updates
|
|
907
|
-
logger.warn('Natural language update
|
|
958
|
+
logger.warn('Natural language update uses best-effort parsing; verify the result before applying');
|
|
908
959
|
throw new ServiceNowError('Natural language update requires custom parsing logic - not yet implemented', 'NOT_IMPLEMENTED');
|
|
909
960
|
}
|
|
910
961
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/servicenow/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/servicenow/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instances.d.ts","sourceRoot":"","sources":["../../src/servicenow/instances.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAW/C,cAAM,eAAe;IACnB,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,WAAW,CAAqB;;IAMxC,OAAO,CAAC,aAAa;
|
|
1
|
+
{"version":3,"file":"instances.d.ts","sourceRoot":"","sources":["../../src/servicenow/instances.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAW/C,cAAM,eAAe;IACnB,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,WAAW,CAAqB;;IAMxC,OAAO,CAAC,aAAa;IAuJrB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,QAAQ;IAUhB,+EAA+E;IAC/E,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAS1C,yEAAyE;IACzE,MAAM,IAAI,IAAI;IAMd,kDAAkD;IAClD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ1B,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,SAAS,IAAI,MAAM,EAAE;IAIrB,OAAO,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CASrG;AAED,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
|
|
@@ -129,6 +129,26 @@ class InstanceManager {
|
|
|
129
129
|
// older unprefixed SERVICENOW_CLIENT_ID / SERVICENOW_USERNAME forms.
|
|
130
130
|
const legacyUrl = process.env.SERVICENOW_INSTANCE_URL;
|
|
131
131
|
if (legacyUrl && !this.instances.has('default')) {
|
|
132
|
+
// Delegated auth: a pre-obtained access token (e.g. supplied by a host that
|
|
133
|
+
// already manages the OAuth session). Per-user mode sends it as `Bearer
|
|
134
|
+
// <token>` and skips all service-account token acquisition — so a caller with
|
|
135
|
+
// only an access token (no username/password, no client_credentials that this
|
|
136
|
+
// server could exchange) can still connect over stdio.
|
|
137
|
+
const bearer = process.env.SERVICENOW_BEARER_TOKEN || process.env.SN_BEARER_TOKEN;
|
|
138
|
+
if (bearer) {
|
|
139
|
+
this.register('default', {
|
|
140
|
+
instanceUrl: legacyUrl,
|
|
141
|
+
authMethod: 'oauth', // unused in per-user mode; the bearer token is authoritative
|
|
142
|
+
authMode: 'per-user',
|
|
143
|
+
perUserBearerToken: bearer,
|
|
144
|
+
maxRetries: parseInt(process.env.MAX_RETRIES || '3', 10),
|
|
145
|
+
retryDelayMs: parseInt(process.env.RETRY_DELAY_MS || '1000', 10),
|
|
146
|
+
requestTimeoutMs: parseInt(process.env.REQUEST_TIMEOUT_MS || '30000', 10),
|
|
147
|
+
});
|
|
148
|
+
if (this.instances.size === 1)
|
|
149
|
+
this.currentName = 'default';
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
132
152
|
const auth = (process.env.SERVICENOW_AUTH_METHOD || 'basic');
|
|
133
153
|
this.register('default', {
|
|
134
154
|
instanceUrl: legacyUrl,
|