@sonisoft/now-sdk-ext-mcp 1.0.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 +393 -0
- package/dist/common/connection.d.ts +42 -0
- package/dist/common/connection.d.ts.map +1 -0
- package/dist/common/connection.js +119 -0
- package/dist/common/connection.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +108 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/aggregate.d.ts +20 -0
- package/dist/tools/aggregate.d.ts.map +1 -0
- package/dist/tools/aggregate.js +271 -0
- package/dist/tools/aggregate.js.map +1 -0
- package/dist/tools/app-manager.d.ts +50 -0
- package/dist/tools/app-manager.d.ts.map +1 -0
- package/dist/tools/app-manager.js +756 -0
- package/dist/tools/app-manager.js.map +1 -0
- package/dist/tools/atf.d.ts +16 -0
- package/dist/tools/atf.d.ts.map +1 -0
- package/dist/tools/atf.js +246 -0
- package/dist/tools/atf.js.map +1 -0
- package/dist/tools/attachment.d.ts +20 -0
- package/dist/tools/attachment.d.ts.map +1 -0
- package/dist/tools/attachment.js +223 -0
- package/dist/tools/attachment.js.map +1 -0
- package/dist/tools/batch.d.ts +15 -0
- package/dist/tools/batch.d.ts.map +1 -0
- package/dist/tools/batch.js +159 -0
- package/dist/tools/batch.js.map +1 -0
- package/dist/tools/cmdb.d.ts +14 -0
- package/dist/tools/cmdb.d.ts.map +1 -0
- package/dist/tools/cmdb.js +199 -0
- package/dist/tools/cmdb.js.map +1 -0
- package/dist/tools/codesearch.d.ts +31 -0
- package/dist/tools/codesearch.d.ts.map +1 -0
- package/dist/tools/codesearch.js +371 -0
- package/dist/tools/codesearch.js.map +1 -0
- package/dist/tools/discovery.d.ts +15 -0
- package/dist/tools/discovery.d.ts.map +1 -0
- package/dist/tools/discovery.js +204 -0
- package/dist/tools/discovery.js.map +1 -0
- package/dist/tools/execute-script.d.ts +9 -0
- package/dist/tools/execute-script.d.ts.map +1 -0
- package/dist/tools/execute-script.js +106 -0
- package/dist/tools/execute-script.js.map +1 -0
- package/dist/tools/find-atf-tests.d.ts +9 -0
- package/dist/tools/find-atf-tests.d.ts.map +1 -0
- package/dist/tools/find-atf-tests.js +152 -0
- package/dist/tools/find-atf-tests.js.map +1 -0
- package/dist/tools/health.d.ts +9 -0
- package/dist/tools/health.d.ts.map +1 -0
- package/dist/tools/health.js +137 -0
- package/dist/tools/health.js.map +1 -0
- package/dist/tools/lookup-app.d.ts +11 -0
- package/dist/tools/lookup-app.d.ts.map +1 -0
- package/dist/tools/lookup-app.js +242 -0
- package/dist/tools/lookup-app.js.map +1 -0
- package/dist/tools/lookup-columns.d.ts +10 -0
- package/dist/tools/lookup-columns.d.ts.map +1 -0
- package/dist/tools/lookup-columns.js +180 -0
- package/dist/tools/lookup-columns.js.map +1 -0
- package/dist/tools/lookup-table.d.ts +10 -0
- package/dist/tools/lookup-table.d.ts.map +1 -0
- package/dist/tools/lookup-table.js +150 -0
- package/dist/tools/lookup-table.js.map +1 -0
- package/dist/tools/query-batch.d.ts +16 -0
- package/dist/tools/query-batch.d.ts.map +1 -0
- package/dist/tools/query-batch.js +197 -0
- package/dist/tools/query-batch.js.map +1 -0
- package/dist/tools/query-syslog.d.ts +9 -0
- package/dist/tools/query-syslog.d.ts.map +1 -0
- package/dist/tools/query-syslog.js +127 -0
- package/dist/tools/query-syslog.js.map +1 -0
- package/dist/tools/query-table.d.ts +8 -0
- package/dist/tools/query-table.d.ts.map +1 -0
- package/dist/tools/query-table.js +137 -0
- package/dist/tools/query-table.js.map +1 -0
- package/dist/tools/schema.d.ts +24 -0
- package/dist/tools/schema.d.ts.map +1 -0
- package/dist/tools/schema.js +321 -0
- package/dist/tools/schema.js.map +1 -0
- package/dist/tools/scope.d.ts +25 -0
- package/dist/tools/scope.d.ts.map +1 -0
- package/dist/tools/scope.js +226 -0
- package/dist/tools/scope.js.map +1 -0
- package/dist/tools/scriptsync.d.ts +14 -0
- package/dist/tools/scriptsync.d.ts.map +1 -0
- package/dist/tools/scriptsync.js +167 -0
- package/dist/tools/scriptsync.js.map +1 -0
- package/dist/tools/task.d.ts +39 -0
- package/dist/tools/task.d.ts.map +1 -0
- package/dist/tools/task.js +390 -0
- package/dist/tools/task.js.map +1 -0
- package/dist/tools/updateset.d.ts +46 -0
- package/dist/tools/updateset.d.ts.map +1 -0
- package/dist/tools/updateset.js +475 -0
- package/dist/tools/updateset.js.map +1 -0
- package/dist/tools/workflow.d.ts +9 -0
- package/dist/tools/workflow.d.ts.map +1 -0
- package/dist/tools/workflow.js +164 -0
- package/dist/tools/workflow.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-manager.js","sourceRoot":"","sources":["../../src/tools/app-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
/**
|
|
3
|
+
* Registers the run_atf_test tool on the MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Executes a single ATF (Automated Test Framework) test by sys_id,
|
|
6
|
+
* waits for completion, and returns the result.
|
|
7
|
+
*/
|
|
8
|
+
export declare function registerRunAtfTestTool(server: McpServer): void;
|
|
9
|
+
/**
|
|
10
|
+
* Registers the run_atf_test_suite tool on the MCP server.
|
|
11
|
+
*
|
|
12
|
+
* Executes an ATF test suite by name or sys_id, waits for completion,
|
|
13
|
+
* and returns a summary of the results.
|
|
14
|
+
*/
|
|
15
|
+
export declare function registerRunAtfTestSuiteTool(server: McpServer): void;
|
|
16
|
+
//# sourceMappingURL=atf.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"atf.d.ts","sourceRoot":"","sources":["../../src/tools/atf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA8F9D;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqLnE"}
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { ATFTestExecutor } from "@sonisoft/now-sdk-ext-core";
|
|
3
|
+
import { withConnectionRetry } from "../common/connection.js";
|
|
4
|
+
/**
|
|
5
|
+
* Registers the run_atf_test tool on the MCP server.
|
|
6
|
+
*
|
|
7
|
+
* Executes a single ATF (Automated Test Framework) test by sys_id,
|
|
8
|
+
* waits for completion, and returns the result.
|
|
9
|
+
*/
|
|
10
|
+
export function registerRunAtfTestTool(server) {
|
|
11
|
+
server.registerTool("run_atf_test", {
|
|
12
|
+
title: "Run ATF Test",
|
|
13
|
+
description: "Execute a single ServiceNow ATF (Automated Test Framework) test by its sys_id. " +
|
|
14
|
+
"The test runs on the instance, and this tool waits for it to complete before " +
|
|
15
|
+
"returning the result. Returns the test name, status (success/failure), run time, " +
|
|
16
|
+
"and any output produced by the test.\n\n" +
|
|
17
|
+
"Use this tool when the user wants to run a specific ATF test and see its results.",
|
|
18
|
+
inputSchema: {
|
|
19
|
+
instance: z
|
|
20
|
+
.string()
|
|
21
|
+
.optional()
|
|
22
|
+
.describe("The ServiceNow instance auth alias to run the test on. " +
|
|
23
|
+
"This is the alias configured via `snc configure` (e.g., " +
|
|
24
|
+
'"dev224436", "prod", "test"). If not provided, falls back ' +
|
|
25
|
+
"to the SN_AUTH_ALIAS environment variable."),
|
|
26
|
+
test_sys_id: z
|
|
27
|
+
.string()
|
|
28
|
+
.describe("The sys_id of the ATF test to execute. This is the unique identifier " +
|
|
29
|
+
"for the test record in the sys_atf_test table."),
|
|
30
|
+
},
|
|
31
|
+
}, async ({ instance, test_sys_id }) => {
|
|
32
|
+
try {
|
|
33
|
+
const result = await withConnectionRetry(instance, async (snInstance) => {
|
|
34
|
+
const executor = new ATFTestExecutor(snInstance);
|
|
35
|
+
return await executor.executeTest(test_sys_id);
|
|
36
|
+
});
|
|
37
|
+
if (!result) {
|
|
38
|
+
return {
|
|
39
|
+
content: [
|
|
40
|
+
{
|
|
41
|
+
type: "text",
|
|
42
|
+
text: "Test executed but returned no result. The test may have been cancelled or the progress tracker could not be resolved.",
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
isError: true,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
// Format output matching the CLI's AtfResultFormatterService pattern
|
|
49
|
+
const lines = [];
|
|
50
|
+
lines.push("=== Test Execution Results ===");
|
|
51
|
+
lines.push(`Test Name: ${result.test_name}`);
|
|
52
|
+
lines.push(`Status: ${result.status}`);
|
|
53
|
+
lines.push(`Run Time: ${result.run_time}`);
|
|
54
|
+
lines.push(`Test Sys ID: ${result.test.value}`);
|
|
55
|
+
lines.push(`Result Sys ID: ${result.sys_id}`);
|
|
56
|
+
if (result.output) {
|
|
57
|
+
lines.push("");
|
|
58
|
+
lines.push("--- Output ---");
|
|
59
|
+
lines.push(result.output);
|
|
60
|
+
}
|
|
61
|
+
lines.push("");
|
|
62
|
+
lines.push("=== Execution Complete ===");
|
|
63
|
+
if (result.status !== "success") {
|
|
64
|
+
lines.push("");
|
|
65
|
+
lines.push("FAILED: Test did not pass.");
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
content: [
|
|
69
|
+
{
|
|
70
|
+
type: "text",
|
|
71
|
+
text: lines.join("\n"),
|
|
72
|
+
},
|
|
73
|
+
],
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
78
|
+
return {
|
|
79
|
+
content: [
|
|
80
|
+
{
|
|
81
|
+
type: "text",
|
|
82
|
+
text: `Error running ATF test: ${message}`,
|
|
83
|
+
},
|
|
84
|
+
],
|
|
85
|
+
isError: true,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Registers the run_atf_test_suite tool on the MCP server.
|
|
92
|
+
*
|
|
93
|
+
* Executes an ATF test suite by name or sys_id, waits for completion,
|
|
94
|
+
* and returns a summary of the results.
|
|
95
|
+
*/
|
|
96
|
+
export function registerRunAtfTestSuiteTool(server) {
|
|
97
|
+
server.registerTool("run_atf_test_suite", {
|
|
98
|
+
title: "Run ATF Test Suite",
|
|
99
|
+
description: "Execute a ServiceNow ATF test suite and wait for all tests to complete. " +
|
|
100
|
+
"Identify the suite by either its name or sys_id (provide exactly one). " +
|
|
101
|
+
"Returns a summary with pass/fail/skip/error counts and overall status.\n\n" +
|
|
102
|
+
"Use this tool when the user wants to run a collection of ATF tests as a suite.",
|
|
103
|
+
inputSchema: {
|
|
104
|
+
instance: z
|
|
105
|
+
.string()
|
|
106
|
+
.optional()
|
|
107
|
+
.describe("The ServiceNow instance auth alias to run the suite on. " +
|
|
108
|
+
"This is the alias configured via `snc configure` (e.g., " +
|
|
109
|
+
'"dev224436", "prod", "test"). If not provided, falls back ' +
|
|
110
|
+
"to the SN_AUTH_ALIAS environment variable."),
|
|
111
|
+
suite_name: z
|
|
112
|
+
.string()
|
|
113
|
+
.optional()
|
|
114
|
+
.describe("The name of the test suite to execute. Provide either suite_name or " +
|
|
115
|
+
"suite_sys_id, but not both."),
|
|
116
|
+
suite_sys_id: z
|
|
117
|
+
.string()
|
|
118
|
+
.optional()
|
|
119
|
+
.describe("The sys_id of the test suite to execute. Provide either suite_name or " +
|
|
120
|
+
"suite_sys_id, but not both."),
|
|
121
|
+
browser_name: z
|
|
122
|
+
.string()
|
|
123
|
+
.optional()
|
|
124
|
+
.describe("Browser to use for UI tests (e.g., \"Chrome\", \"Firefox\")."),
|
|
125
|
+
browser_version: z
|
|
126
|
+
.string()
|
|
127
|
+
.optional()
|
|
128
|
+
.describe("Browser version for UI tests."),
|
|
129
|
+
os_name: z
|
|
130
|
+
.string()
|
|
131
|
+
.optional()
|
|
132
|
+
.describe("Operating system for UI tests (e.g., \"Windows\", \"Mac\")."),
|
|
133
|
+
os_version: z
|
|
134
|
+
.string()
|
|
135
|
+
.optional()
|
|
136
|
+
.describe("OS version for UI tests."),
|
|
137
|
+
is_performance_run: z
|
|
138
|
+
.boolean()
|
|
139
|
+
.optional()
|
|
140
|
+
.describe("Whether to run as a performance test."),
|
|
141
|
+
run_in_cloud: z
|
|
142
|
+
.boolean()
|
|
143
|
+
.optional()
|
|
144
|
+
.describe("Whether to run tests in the cloud runner."),
|
|
145
|
+
},
|
|
146
|
+
}, async ({ instance, suite_name, suite_sys_id, browser_name, browser_version, os_name, os_version, is_performance_run, run_in_cloud, }) => {
|
|
147
|
+
try {
|
|
148
|
+
// Validate that exactly one identifier is provided
|
|
149
|
+
if (!suite_name && !suite_sys_id) {
|
|
150
|
+
return {
|
|
151
|
+
content: [
|
|
152
|
+
{
|
|
153
|
+
type: "text",
|
|
154
|
+
text: "Error: You must provide either suite_name or suite_sys_id to identify the test suite.",
|
|
155
|
+
},
|
|
156
|
+
],
|
|
157
|
+
isError: true,
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
if (suite_name && suite_sys_id) {
|
|
161
|
+
return {
|
|
162
|
+
content: [
|
|
163
|
+
{
|
|
164
|
+
type: "text",
|
|
165
|
+
text: "Error: Provide either suite_name or suite_sys_id, not both.",
|
|
166
|
+
},
|
|
167
|
+
],
|
|
168
|
+
isError: true,
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
const result = await withConnectionRetry(instance, async (snInstance) => {
|
|
172
|
+
const executor = new ATFTestExecutor(snInstance);
|
|
173
|
+
// Build optional execution config
|
|
174
|
+
const options = {};
|
|
175
|
+
if (browser_name)
|
|
176
|
+
options.browser_name = browser_name;
|
|
177
|
+
if (browser_version)
|
|
178
|
+
options.browser_version = browser_version;
|
|
179
|
+
if (os_name)
|
|
180
|
+
options.os_name = os_name;
|
|
181
|
+
if (os_version)
|
|
182
|
+
options.os_version = os_version;
|
|
183
|
+
if (is_performance_run !== undefined)
|
|
184
|
+
options.is_performance_run = is_performance_run;
|
|
185
|
+
if (run_in_cloud !== undefined)
|
|
186
|
+
options.run_in_cloud = run_in_cloud;
|
|
187
|
+
const hasOptions = Object.keys(options).length > 0;
|
|
188
|
+
return suite_sys_id
|
|
189
|
+
? await executor.executeTestSuiteAndWait(suite_sys_id, hasOptions ? options : undefined)
|
|
190
|
+
: await executor.executeTestSuiteByNameAndWait(suite_name, hasOptions ? options : undefined);
|
|
191
|
+
});
|
|
192
|
+
// Format output matching the CLI's AtfResultFormatterService pattern
|
|
193
|
+
const successCount = parseInt(result.success_count || "0", 10);
|
|
194
|
+
const failureCount = parseInt(result.failure_count || "0", 10);
|
|
195
|
+
const skipCount = parseInt(result.skip_count || "0", 10);
|
|
196
|
+
const errorCount = parseInt(result.error_count || "0", 10);
|
|
197
|
+
const totalTests = successCount + failureCount + skipCount + errorCount;
|
|
198
|
+
const lines = [];
|
|
199
|
+
lines.push("=== Test Suite Execution Results ===");
|
|
200
|
+
lines.push(`Test Suite: ${result.test_suite.value}`);
|
|
201
|
+
lines.push(`Status: ${result.status}`);
|
|
202
|
+
lines.push(`Success: ${result.success}`);
|
|
203
|
+
lines.push(`Run Time: ${result.run_time}`);
|
|
204
|
+
lines.push(`Start Time: ${result.start_time}`);
|
|
205
|
+
lines.push(`End Time: ${result.end_time}`);
|
|
206
|
+
lines.push("");
|
|
207
|
+
lines.push("--- Test Summary ---");
|
|
208
|
+
lines.push(`Total Tests: ${totalTests}`);
|
|
209
|
+
lines.push(`Passed: ${successCount}`);
|
|
210
|
+
lines.push(`Failed: ${failureCount}`);
|
|
211
|
+
lines.push(`Skipped: ${skipCount}`);
|
|
212
|
+
lines.push(`Errors: ${errorCount}`);
|
|
213
|
+
lines.push("");
|
|
214
|
+
lines.push("=== Execution Complete ===");
|
|
215
|
+
if (failureCount === 0 && errorCount === 0) {
|
|
216
|
+
lines.push("");
|
|
217
|
+
lines.push("All tests passed!");
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
lines.push("");
|
|
221
|
+
lines.push(`${failureCount} test(s) failed, ${errorCount} error(s)`);
|
|
222
|
+
}
|
|
223
|
+
return {
|
|
224
|
+
content: [
|
|
225
|
+
{
|
|
226
|
+
type: "text",
|
|
227
|
+
text: lines.join("\n"),
|
|
228
|
+
},
|
|
229
|
+
],
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
catch (error) {
|
|
233
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
234
|
+
return {
|
|
235
|
+
content: [
|
|
236
|
+
{
|
|
237
|
+
type: "text",
|
|
238
|
+
text: `Error running ATF test suite: ${message}`,
|
|
239
|
+
},
|
|
240
|
+
],
|
|
241
|
+
isError: true,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=atf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"atf.js","sourceRoot":"","sources":["../../src/tools/atf.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
/**
|
|
3
|
+
* Registers the list_attachments tool on the MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Lists attachments on a ServiceNow record.
|
|
6
|
+
*/
|
|
7
|
+
export declare function registerListAttachmentsTool(server: McpServer): void;
|
|
8
|
+
/**
|
|
9
|
+
* Registers the get_attachment_info tool on the MCP server.
|
|
10
|
+
*
|
|
11
|
+
* Gets metadata for a specific attachment by sys_id.
|
|
12
|
+
*/
|
|
13
|
+
export declare function registerGetAttachmentInfoTool(server: McpServer): void;
|
|
14
|
+
/**
|
|
15
|
+
* Registers the upload_attachment tool on the MCP server.
|
|
16
|
+
*
|
|
17
|
+
* Uploads a file attachment to a ServiceNow record.
|
|
18
|
+
*/
|
|
19
|
+
export declare function registerUploadAttachmentTool(server: McpServer): void;
|
|
20
|
+
//# sourceMappingURL=attachment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuFnE;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6DrE;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwFpE"}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { AttachmentManager } from "@sonisoft/now-sdk-ext-core";
|
|
3
|
+
import { withConnectionRetry } from "../common/connection.js";
|
|
4
|
+
/**
|
|
5
|
+
* Registers the list_attachments tool on the MCP server.
|
|
6
|
+
*
|
|
7
|
+
* Lists attachments on a ServiceNow record.
|
|
8
|
+
*/
|
|
9
|
+
export function registerListAttachmentsTool(server) {
|
|
10
|
+
server.registerTool("list_attachments", {
|
|
11
|
+
title: "List Attachments",
|
|
12
|
+
description: "List file attachments on a ServiceNow record. Returns metadata for each " +
|
|
13
|
+
"attachment including file name, content type, and size.\n\n" +
|
|
14
|
+
"Use this to discover what files are attached to incidents, changes, " +
|
|
15
|
+
"catalog items, or any other record.",
|
|
16
|
+
inputSchema: {
|
|
17
|
+
instance: z
|
|
18
|
+
.string()
|
|
19
|
+
.optional()
|
|
20
|
+
.describe("The ServiceNow instance auth alias (e.g., " +
|
|
21
|
+
'"dev224436", "prod"). If not provided, falls back ' +
|
|
22
|
+
"to the SN_AUTH_ALIAS environment variable."),
|
|
23
|
+
table: z
|
|
24
|
+
.string()
|
|
25
|
+
.describe('The table name the record belongs to (e.g., "incident", "change_request").'),
|
|
26
|
+
record_sys_id: z
|
|
27
|
+
.string()
|
|
28
|
+
.describe("The sys_id of the record to list attachments for."),
|
|
29
|
+
limit: z
|
|
30
|
+
.number()
|
|
31
|
+
.min(1)
|
|
32
|
+
.max(200)
|
|
33
|
+
.default(50)
|
|
34
|
+
.describe("Maximum number of attachments to return. Default 50."),
|
|
35
|
+
},
|
|
36
|
+
}, async ({ instance, table, record_sys_id, limit }) => {
|
|
37
|
+
try {
|
|
38
|
+
const attachments = await withConnectionRetry(instance, async (snInstance) => {
|
|
39
|
+
const mgr = new AttachmentManager(snInstance);
|
|
40
|
+
return await mgr.listAttachments({
|
|
41
|
+
tableName: table,
|
|
42
|
+
recordSysId: record_sys_id,
|
|
43
|
+
limit,
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
const lines = [];
|
|
47
|
+
lines.push(`=== Attachments on ${table}/${record_sys_id} ===`);
|
|
48
|
+
lines.push(`Found: ${attachments.length} attachment(s)`);
|
|
49
|
+
if (attachments.length === 0) {
|
|
50
|
+
lines.push("");
|
|
51
|
+
lines.push("No attachments found on this record.");
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
for (let i = 0; i < attachments.length; i++) {
|
|
55
|
+
const att = attachments[i];
|
|
56
|
+
lines.push("");
|
|
57
|
+
lines.push(`${i + 1}. ${att.file_name || "unnamed"}`);
|
|
58
|
+
lines.push(` sys_id: ${att.sys_id}`);
|
|
59
|
+
if (att.content_type)
|
|
60
|
+
lines.push(` Type: ${att.content_type}`);
|
|
61
|
+
if (att.size_bytes)
|
|
62
|
+
lines.push(` Size: ${att.size_bytes} bytes`);
|
|
63
|
+
if (att.sys_created_on)
|
|
64
|
+
lines.push(` Created: ${att.sys_created_on}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
content: [{ type: "text", text: lines.join("\n") }],
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
73
|
+
return {
|
|
74
|
+
content: [
|
|
75
|
+
{
|
|
76
|
+
type: "text",
|
|
77
|
+
text: `Error listing attachments: ${message}`,
|
|
78
|
+
},
|
|
79
|
+
],
|
|
80
|
+
isError: true,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Registers the get_attachment_info tool on the MCP server.
|
|
87
|
+
*
|
|
88
|
+
* Gets metadata for a specific attachment by sys_id.
|
|
89
|
+
*/
|
|
90
|
+
export function registerGetAttachmentInfoTool(server) {
|
|
91
|
+
server.registerTool("get_attachment_info", {
|
|
92
|
+
title: "Get Attachment Info",
|
|
93
|
+
description: "Get metadata for a specific attachment by its sys_id. Returns file name, " +
|
|
94
|
+
"content type, size, and the record it is attached to.",
|
|
95
|
+
inputSchema: {
|
|
96
|
+
instance: z
|
|
97
|
+
.string()
|
|
98
|
+
.optional()
|
|
99
|
+
.describe("The ServiceNow instance auth alias (e.g., " +
|
|
100
|
+
'"dev224436", "prod"). If not provided, falls back ' +
|
|
101
|
+
"to the SN_AUTH_ALIAS environment variable."),
|
|
102
|
+
sys_id: z
|
|
103
|
+
.string()
|
|
104
|
+
.describe("The sys_id of the attachment to retrieve."),
|
|
105
|
+
},
|
|
106
|
+
}, async ({ instance, sys_id }) => {
|
|
107
|
+
try {
|
|
108
|
+
const att = await withConnectionRetry(instance, async (snInstance) => {
|
|
109
|
+
const mgr = new AttachmentManager(snInstance);
|
|
110
|
+
return await mgr.getAttachment(sys_id);
|
|
111
|
+
});
|
|
112
|
+
const lines = [];
|
|
113
|
+
lines.push("=== Attachment Info ===");
|
|
114
|
+
lines.push(`File Name: ${att.file_name || "unnamed"}`);
|
|
115
|
+
lines.push(`sys_id: ${att.sys_id}`);
|
|
116
|
+
if (att.table_name)
|
|
117
|
+
lines.push(`Table: ${att.table_name}`);
|
|
118
|
+
if (att.table_sys_id)
|
|
119
|
+
lines.push(`Record: ${att.table_sys_id}`);
|
|
120
|
+
if (att.content_type)
|
|
121
|
+
lines.push(`Content Type: ${att.content_type}`);
|
|
122
|
+
if (att.size_bytes)
|
|
123
|
+
lines.push(`Size: ${att.size_bytes} bytes`);
|
|
124
|
+
if (att.sys_created_on)
|
|
125
|
+
lines.push(`Created: ${att.sys_created_on}`);
|
|
126
|
+
if (att.sys_created_by)
|
|
127
|
+
lines.push(`Created By: ${att.sys_created_by}`);
|
|
128
|
+
return {
|
|
129
|
+
content: [{ type: "text", text: lines.join("\n") }],
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
134
|
+
return {
|
|
135
|
+
content: [
|
|
136
|
+
{
|
|
137
|
+
type: "text",
|
|
138
|
+
text: `Error getting attachment info: ${message}`,
|
|
139
|
+
},
|
|
140
|
+
],
|
|
141
|
+
isError: true,
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Registers the upload_attachment tool on the MCP server.
|
|
148
|
+
*
|
|
149
|
+
* Uploads a file attachment to a ServiceNow record.
|
|
150
|
+
*/
|
|
151
|
+
export function registerUploadAttachmentTool(server) {
|
|
152
|
+
server.registerTool("upload_attachment", {
|
|
153
|
+
title: "Upload Attachment",
|
|
154
|
+
description: "Upload a file attachment to a ServiceNow record. The file content must be " +
|
|
155
|
+
"provided as a base64-encoded string.\n\n" +
|
|
156
|
+
"IMPORTANT: This creates an attachment on the ServiceNow instance.",
|
|
157
|
+
inputSchema: {
|
|
158
|
+
instance: z
|
|
159
|
+
.string()
|
|
160
|
+
.optional()
|
|
161
|
+
.describe("The ServiceNow instance auth alias (e.g., " +
|
|
162
|
+
'"dev224436", "prod"). If not provided, falls back ' +
|
|
163
|
+
"to the SN_AUTH_ALIAS environment variable."),
|
|
164
|
+
table: z
|
|
165
|
+
.string()
|
|
166
|
+
.describe('The table name the record belongs to (e.g., "incident", "change_request").'),
|
|
167
|
+
record_sys_id: z
|
|
168
|
+
.string()
|
|
169
|
+
.describe("The sys_id of the record to attach the file to."),
|
|
170
|
+
file_name: z
|
|
171
|
+
.string()
|
|
172
|
+
.describe('The file name including extension (e.g., "report.pdf", "data.csv").'),
|
|
173
|
+
content_type: z
|
|
174
|
+
.string()
|
|
175
|
+
.describe('The MIME content type (e.g., "application/pdf", "text/csv", ' +
|
|
176
|
+
'"image/png", "application/json").'),
|
|
177
|
+
content_base64: z
|
|
178
|
+
.string()
|
|
179
|
+
.describe("The file content encoded as a base64 string. For text files, " +
|
|
180
|
+
"encode the text content to base64 before passing."),
|
|
181
|
+
},
|
|
182
|
+
}, async ({ instance, table, record_sys_id, file_name, content_type, content_base64 }) => {
|
|
183
|
+
try {
|
|
184
|
+
const data = Buffer.from(content_base64, "base64");
|
|
185
|
+
const result = await withConnectionRetry(instance, async (snInstance) => {
|
|
186
|
+
const mgr = new AttachmentManager(snInstance);
|
|
187
|
+
return await mgr.uploadAttachment({
|
|
188
|
+
tableName: table,
|
|
189
|
+
recordSysId: record_sys_id,
|
|
190
|
+
fileName: file_name,
|
|
191
|
+
contentType: content_type,
|
|
192
|
+
data,
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
const lines = [];
|
|
196
|
+
lines.push("=== Attachment Uploaded ===");
|
|
197
|
+
lines.push(`File Name: ${result.file_name || file_name}`);
|
|
198
|
+
lines.push(`sys_id: ${result.sys_id}`);
|
|
199
|
+
lines.push(`Table: ${table}`);
|
|
200
|
+
lines.push(`Record: ${record_sys_id}`);
|
|
201
|
+
if (result.content_type)
|
|
202
|
+
lines.push(`Content Type: ${result.content_type}`);
|
|
203
|
+
if (result.size_bytes)
|
|
204
|
+
lines.push(`Size: ${result.size_bytes} bytes`);
|
|
205
|
+
return {
|
|
206
|
+
content: [{ type: "text", text: lines.join("\n") }],
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
211
|
+
return {
|
|
212
|
+
content: [
|
|
213
|
+
{
|
|
214
|
+
type: "text",
|
|
215
|
+
text: `Error uploading attachment: ${message}`,
|
|
216
|
+
},
|
|
217
|
+
],
|
|
218
|
+
isError: true,
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=attachment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../src/tools/attachment.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
/**
|
|
3
|
+
* Registers the batch_create_records tool on the MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Creates multiple records across one or more tables in a single batch.
|
|
6
|
+
* Supports variable references between operations for chaining.
|
|
7
|
+
*/
|
|
8
|
+
export declare function registerBatchCreateRecordsTool(server: McpServer): void;
|
|
9
|
+
/**
|
|
10
|
+
* Registers the batch_update_records tool on the MCP server.
|
|
11
|
+
*
|
|
12
|
+
* Updates multiple records across one or more tables in a single batch.
|
|
13
|
+
*/
|
|
14
|
+
export declare function registerBatchUpdateRecordsTool(server: McpServer): void;
|
|
15
|
+
//# sourceMappingURL=batch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../../src/tools/batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkGtE;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqFtE"}
|