@superblocksteam/mcp-server 2.0.157-next.5 → 2.0.157
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 +1 -2
- package/dist/tools/create-integration.d.ts +0 -7
- package/dist/tools/create-integration.d.ts.map +1 -1
- package/dist/tools/create-integration.js +3 -47
- package/dist/tools/create-integration.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +0 -24
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/schemas.d.ts +0 -12
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +2 -307
- package/dist/tools/schemas.js.map +1 -1
- package/dist/tools/server-api.d.ts +1 -1
- package/dist/tools/server-api.d.ts.map +1 -1
- package/dist/tools/server-api.js +1 -8
- package/dist/tools/server-api.js.map +1 -1
- package/package.json +5 -6
- package/dist/tools/datasource-configuration-by-type.schema.json +0 -2619
- package/dist/tools/get-application-policy-run-findings.d.ts +0 -3
- package/dist/tools/get-application-policy-run-findings.d.ts.map +0 -1
- package/dist/tools/get-application-policy-run-findings.js +0 -62
- package/dist/tools/get-application-policy-run-findings.js.map +0 -1
- package/dist/tools/get-application-publish-pipeline.d.ts +0 -3
- package/dist/tools/get-application-publish-pipeline.d.ts.map +0 -1
- package/dist/tools/get-application-publish-pipeline.js +0 -47
- package/dist/tools/get-application-publish-pipeline.js.map +0 -1
- package/dist/tools/get-application-publish-readiness.d.ts +0 -3
- package/dist/tools/get-application-publish-readiness.d.ts.map +0 -1
- package/dist/tools/get-application-publish-readiness.js +0 -47
- package/dist/tools/get-application-publish-readiness.js.map +0 -1
- package/dist/tools/get-dependency-scan-summary.d.ts +0 -3
- package/dist/tools/get-dependency-scan-summary.d.ts.map +0 -1
- package/dist/tools/get-dependency-scan-summary.js +0 -42
- package/dist/tools/get-dependency-scan-summary.js.map +0 -1
- package/dist/tools/get-integration-config-schema.d.ts +0 -3
- package/dist/tools/get-integration-config-schema.d.ts.map +0 -1
- package/dist/tools/get-integration-config-schema.js +0 -34
- package/dist/tools/get-integration-config-schema.js.map +0 -1
- package/dist/tools/get-review-policy-run-report.d.ts +0 -3
- package/dist/tools/get-review-policy-run-report.d.ts.map +0 -1
- package/dist/tools/get-review-policy-run-report.js +0 -60
- package/dist/tools/get-review-policy-run-report.js.map +0 -1
- package/dist/tools/get-review-policy-summary.d.ts +0 -3
- package/dist/tools/get-review-policy-summary.d.ts.map +0 -1
- package/dist/tools/get-review-policy-summary.js +0 -47
- package/dist/tools/get-review-policy-summary.js.map +0 -1
- package/dist/tools/get-review-policy.d.ts +0 -3
- package/dist/tools/get-review-policy.d.ts.map +0 -1
- package/dist/tools/get-review-policy.js +0 -43
- package/dist/tools/get-review-policy.js.map +0 -1
- package/dist/tools/list-dependency-scan-findings.d.ts +0 -3
- package/dist/tools/list-dependency-scan-findings.d.ts.map +0 -1
- package/dist/tools/list-dependency-scan-findings.js +0 -69
- package/dist/tools/list-dependency-scan-findings.js.map +0 -1
- package/dist/tools/list-review-policies.d.ts +0 -3
- package/dist/tools/list-review-policies.d.ts.map +0 -1
- package/dist/tools/list-review-policies.js +0 -42
- package/dist/tools/list-review-policies.js.map +0 -1
- package/dist/tools/list-review-policy-runs.d.ts +0 -3
- package/dist/tools/list-review-policy-runs.d.ts.map +0 -1
- package/dist/tools/list-review-policy-runs.js +0 -80
- package/dist/tools/list-review-policy-runs.js.map +0 -1
- package/dist/tools/lookup-package-vulnerabilities.d.ts +0 -3
- package/dist/tools/lookup-package-vulnerabilities.d.ts.map +0 -1
- package/dist/tools/lookup-package-vulnerabilities.js +0 -57
- package/dist/tools/lookup-package-vulnerabilities.js.map +0 -1
- package/dist/tools/plugin-configuration-schema.d.ts +0 -3
- package/dist/tools/plugin-configuration-schema.d.ts.map +0 -1
- package/dist/tools/plugin-configuration-schema.js +0 -95
- package/dist/tools/plugin-configuration-schema.js.map +0 -1
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { resolveAuthForOrigin } from "../auth/resolve-auth.js";
|
|
3
|
-
import { detectEnvironment, normalizeBaseUrl } from "../urls.js";
|
|
4
|
-
import * as schemas from "./schemas.js";
|
|
5
|
-
import { callServerApi } from "./server-api.js";
|
|
6
|
-
import { parseToolInput } from "./validation.js";
|
|
7
|
-
const listReviewPoliciesInputSchema = z
|
|
8
|
-
.object({
|
|
9
|
-
base_url: z.url(),
|
|
10
|
-
})
|
|
11
|
-
.strict();
|
|
12
|
-
export const listReviewPolicies = {
|
|
13
|
-
name: "list_review_policies",
|
|
14
|
-
title: "List Review Policies",
|
|
15
|
-
description: "List every policy agent / review policy configured for the org (Security Center Policies view): name, policy type, status, mode (advisory or blocking), scope, stage, domain, and the last run summary for each.",
|
|
16
|
-
inputSchema: schemas.listReviewPoliciesToolInputSchema,
|
|
17
|
-
annotations: {
|
|
18
|
-
readOnlyHint: true,
|
|
19
|
-
destructiveHint: false,
|
|
20
|
-
idempotentHint: true,
|
|
21
|
-
openWorldHint: true,
|
|
22
|
-
},
|
|
23
|
-
audience: "customer",
|
|
24
|
-
async handler(args) {
|
|
25
|
-
const input = parseToolInput(listReviewPoliciesInputSchema, args);
|
|
26
|
-
const baseUrl = normalizeBaseUrl(input.base_url);
|
|
27
|
-
const auth = await resolveAuthForOrigin(baseUrl);
|
|
28
|
-
const data = await callServerApi({
|
|
29
|
-
baseUrl,
|
|
30
|
-
token: auth.token,
|
|
31
|
-
method: "GET",
|
|
32
|
-
path: "/api/v1/review-policies",
|
|
33
|
-
});
|
|
34
|
-
return {
|
|
35
|
-
policies: data,
|
|
36
|
-
auth_source: auth.source,
|
|
37
|
-
base_url: baseUrl,
|
|
38
|
-
environment: detectEnvironment(baseUrl),
|
|
39
|
-
};
|
|
40
|
-
},
|
|
41
|
-
};
|
|
42
|
-
//# sourceMappingURL=list-review-policies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-review-policies.js","sourceRoot":"","sources":["../../src/tools/list-review-policies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,6BAA6B,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE;CAClB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,kBAAkB,GAAmB;IAChD,IAAI,EAAE,sBAAsB;IAC5B,KAAK,EAAE,sBAAsB;IAC7B,WAAW,EACT,kNAAkN;IACpN,WAAW,EAAE,OAAO,CAAC,iCAAiC;IACtD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;IACD,QAAQ,EAAE,UAAU;IACpB,KAAK,CAAC,OAAO,CAAC,IAAI;QAChB,MAAM,KAAK,GAAG,cAAc,CAAC,6BAA6B,EAAE,IAAI,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC;YAC/B,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,yBAAyB;SAChC,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC;SACxC,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-review-policy-runs.d.ts","sourceRoot":"","sources":["../../src/tools/list-review-policy-runs.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA0CpD,eAAO,MAAM,oBAAoB,EAAE,cA+ClC,CAAC"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { MAX_REVIEW_POLICY_RUNS_LIMIT, REVIEW_POLICY_NAME_MAX_LENGTH, REVIEW_POLICY_RUN_SORTS, REVIEW_RUN_STATUSES, REVIEW_RUN_TRIGGERED_BYS, } from "@superblocksteam/shared";
|
|
3
|
-
import { resolveAuthForOrigin } from "../auth/resolve-auth.js";
|
|
4
|
-
import { detectEnvironment, normalizeBaseUrl } from "../urls.js";
|
|
5
|
-
import * as schemas from "./schemas.js";
|
|
6
|
-
import { callServerApi } from "./server-api.js";
|
|
7
|
-
import { parseToolInput } from "./validation.js";
|
|
8
|
-
const listReviewPolicyRunsInputSchema = z
|
|
9
|
-
.object({
|
|
10
|
-
base_url: z.url(),
|
|
11
|
-
policy_id: z
|
|
12
|
-
.uuid()
|
|
13
|
-
.describe("When provided, scopes results to runs of this policy. Omit for org-wide runs across every policy.")
|
|
14
|
-
.optional(),
|
|
15
|
-
application_id: z.uuid().optional(),
|
|
16
|
-
status: z.enum(REVIEW_RUN_STATUSES).optional(),
|
|
17
|
-
search: z.string().trim().max(REVIEW_POLICY_NAME_MAX_LENGTH).optional(),
|
|
18
|
-
sort: z.enum(REVIEW_POLICY_RUN_SORTS).optional(),
|
|
19
|
-
order: z.enum(["asc", "desc"]).optional(),
|
|
20
|
-
time_start: z.iso.datetime().optional(),
|
|
21
|
-
time_end: z.iso.datetime().optional(),
|
|
22
|
-
triggered_by: z.array(z.enum(REVIEW_RUN_TRIGGERED_BYS)).min(1).optional(),
|
|
23
|
-
triggering_user_ids: z.array(z.uuid()).min(1).optional(),
|
|
24
|
-
limit: z.number().int().min(1).max(MAX_REVIEW_POLICY_RUNS_LIMIT).optional(),
|
|
25
|
-
offset: z.number().int().min(0).optional(),
|
|
26
|
-
})
|
|
27
|
-
.strict()
|
|
28
|
-
.refine((value) => (value.time_start === undefined) === (value.time_end === undefined), {
|
|
29
|
-
message: "time_start and time_end must both be provided",
|
|
30
|
-
})
|
|
31
|
-
.refine((value) => value.time_start === undefined ||
|
|
32
|
-
value.time_end === undefined ||
|
|
33
|
-
Date.parse(value.time_start) <= Date.parse(value.time_end), { message: "time_end must be after time_start" });
|
|
34
|
-
export const listReviewPolicyRuns = {
|
|
35
|
-
name: "list_review_policy_runs",
|
|
36
|
-
title: "List Review Policy Runs",
|
|
37
|
-
description: "List policy agent run history, either org-wide or scoped to a single policy via policy_id. Each run reports its status, decision, findings count, and the triggering app/commit/user.",
|
|
38
|
-
inputSchema: schemas.listReviewPolicyRunsToolInputSchema,
|
|
39
|
-
annotations: {
|
|
40
|
-
readOnlyHint: true,
|
|
41
|
-
destructiveHint: false,
|
|
42
|
-
idempotentHint: true,
|
|
43
|
-
openWorldHint: true,
|
|
44
|
-
},
|
|
45
|
-
audience: "customer",
|
|
46
|
-
async handler(args) {
|
|
47
|
-
const input = parseToolInput(listReviewPolicyRunsInputSchema, args);
|
|
48
|
-
const baseUrl = normalizeBaseUrl(input.base_url);
|
|
49
|
-
const auth = await resolveAuthForOrigin(baseUrl);
|
|
50
|
-
const path = input.policy_id
|
|
51
|
-
? `/api/v1/review-policies/${input.policy_id}/runs`
|
|
52
|
-
: "/api/v1/review-policies/runs";
|
|
53
|
-
const data = await callServerApi({
|
|
54
|
-
baseUrl,
|
|
55
|
-
token: auth.token,
|
|
56
|
-
method: "GET",
|
|
57
|
-
path,
|
|
58
|
-
query: {
|
|
59
|
-
applicationId: input.application_id,
|
|
60
|
-
status: input.status,
|
|
61
|
-
search: input.search,
|
|
62
|
-
sort: input.sort,
|
|
63
|
-
order: input.order,
|
|
64
|
-
timeStart: input.time_start,
|
|
65
|
-
timeEnd: input.time_end,
|
|
66
|
-
triggeredBy: input.triggered_by,
|
|
67
|
-
triggeringUserId: input.triggering_user_ids,
|
|
68
|
-
limit: input.limit,
|
|
69
|
-
offset: input.offset,
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
return {
|
|
73
|
-
runs: data,
|
|
74
|
-
auth_source: auth.source,
|
|
75
|
-
base_url: baseUrl,
|
|
76
|
-
environment: detectEnvironment(baseUrl),
|
|
77
|
-
};
|
|
78
|
-
},
|
|
79
|
-
};
|
|
80
|
-
//# sourceMappingURL=list-review-policy-runs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-review-policy-runs.js","sourceRoot":"","sources":["../../src/tools/list-review-policy-runs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lookup-package-vulnerabilities.d.ts","sourceRoot":"","sources":["../../src/tools/lookup-package-vulnerabilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAyBpD,eAAO,MAAM,4BAA4B,EAAE,cAoC1C,CAAC"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { resolveAuthForOrigin } from "../auth/resolve-auth.js";
|
|
3
|
-
import { detectEnvironment, normalizeBaseUrl } from "../urls.js";
|
|
4
|
-
import * as schemas from "./schemas.js";
|
|
5
|
-
import { callServerApi } from "./server-api.js";
|
|
6
|
-
import { parseToolInput } from "./validation.js";
|
|
7
|
-
const MAX_PACKAGES = 5000;
|
|
8
|
-
const FIELD_MAX_LENGTH = 256;
|
|
9
|
-
const lookupPackageVulnerabilitiesInputSchema = z
|
|
10
|
-
.object({
|
|
11
|
-
base_url: z.url(),
|
|
12
|
-
packages: z
|
|
13
|
-
.array(z
|
|
14
|
-
.object({
|
|
15
|
-
name: z.string().min(1).max(FIELD_MAX_LENGTH),
|
|
16
|
-
version: z.string().min(1).max(FIELD_MAX_LENGTH),
|
|
17
|
-
})
|
|
18
|
-
.strict())
|
|
19
|
-
.min(1)
|
|
20
|
-
.max(MAX_PACKAGES),
|
|
21
|
-
})
|
|
22
|
-
.strict();
|
|
23
|
-
export const lookupPackageVulnerabilities = {
|
|
24
|
-
name: "lookup_package_vulnerabilities",
|
|
25
|
-
title: "Lookup Package Vulnerabilities",
|
|
26
|
-
description: "Check a batch of npm {name, version} pairs against the org-agnostic package vulnerability index before an install. Returns per-package severity, covering advisories, whether the package carries known malware, and a non-binding remediation suggestion ('pass', 'remediatable', or 'block').",
|
|
27
|
-
inputSchema: schemas.lookupPackageVulnerabilitiesToolInputSchema,
|
|
28
|
-
annotations: {
|
|
29
|
-
readOnlyHint: true,
|
|
30
|
-
destructiveHint: false,
|
|
31
|
-
idempotentHint: true,
|
|
32
|
-
openWorldHint: true,
|
|
33
|
-
},
|
|
34
|
-
audience: "customer",
|
|
35
|
-
async handler(args) {
|
|
36
|
-
const input = parseToolInput(lookupPackageVulnerabilitiesInputSchema, args);
|
|
37
|
-
const baseUrl = normalizeBaseUrl(input.base_url);
|
|
38
|
-
const auth = await resolveAuthForOrigin(baseUrl);
|
|
39
|
-
const data = (await callServerApi({
|
|
40
|
-
baseUrl,
|
|
41
|
-
token: auth.token,
|
|
42
|
-
method: "POST",
|
|
43
|
-
path: "/api/v1/security/package-lookup",
|
|
44
|
-
body: { packages: input.packages },
|
|
45
|
-
}));
|
|
46
|
-
if (!data || !Array.isArray(data.results)) {
|
|
47
|
-
throw new Error("Unexpected response shape from package-lookup endpoint");
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
results: data.results,
|
|
51
|
-
auth_source: auth.source,
|
|
52
|
-
base_url: baseUrl,
|
|
53
|
-
environment: detectEnvironment(baseUrl),
|
|
54
|
-
};
|
|
55
|
-
},
|
|
56
|
-
};
|
|
57
|
-
//# sourceMappingURL=lookup-package-vulnerabilities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lookup-package-vulnerabilities.js","sourceRoot":"","sources":["../../src/tools/lookup-package-vulnerabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,uCAAuC,GAAG,CAAC;KAC9C,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE;IACjB,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;KACjD,CAAC;SACD,MAAM,EAAE,CACZ;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,YAAY,CAAC;CACrB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,4BAA4B,GAAmB;IAC1D,IAAI,EAAE,gCAAgC;IACtC,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,iSAAiS;IACnS,WAAW,EAAE,OAAO,CAAC,2CAA2C;IAChE,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;IACD,QAAQ,EAAE,UAAU;IACpB,KAAK,CAAC,OAAO,CAAC,IAAI;QAChB,MAAM,KAAK,GAAG,cAAc,CAAC,uCAAuC,EAAE,IAAI,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,CAAC,MAAM,aAAa,CAAC;YAChC,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iCAAiC;YACvC,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE;SACnC,CAAC,CAAkC,CAAC;QAErC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC;SACxC,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-configuration-schema.d.ts","sourceRoot":"","sources":["../../src/tools/plugin-configuration-schema.ts"],"names":[],"mappings":"AA+BA,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAIxC;AA6DD,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBzB"}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { ErrorCode, McpError } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
-
// Vendored from @superblocksteam/schemas rather than imported: that package is
|
|
3
|
-
// not published to the registry the dev-server image installs from. The test
|
|
4
|
-
// alongside this file fails if the copy drifts from the generator.
|
|
5
|
-
import datasourceConfigurationByTypeSchema from "./datasource-configuration-by-type.schema.json" with { type: "json" };
|
|
6
|
-
const STEP_ONLY_PLUGIN_IDS = new Set([
|
|
7
|
-
"graphql",
|
|
8
|
-
"javascript",
|
|
9
|
-
"python",
|
|
10
|
-
"restapi",
|
|
11
|
-
"workflow",
|
|
12
|
-
]);
|
|
13
|
-
function isRecord(value) {
|
|
14
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
15
|
-
}
|
|
16
|
-
function pluginProperties() {
|
|
17
|
-
const definitions = datasourceConfigurationByTypeSchema.definitions;
|
|
18
|
-
if (!isRecord(definitions)) {
|
|
19
|
-
return {};
|
|
20
|
-
}
|
|
21
|
-
const byType = definitions.DatasourceConfigurationByType;
|
|
22
|
-
if (!isRecord(byType) || !isRecord(byType.properties)) {
|
|
23
|
-
return {};
|
|
24
|
-
}
|
|
25
|
-
return byType.properties;
|
|
26
|
-
}
|
|
27
|
-
export function listPluginIds() {
|
|
28
|
-
return Object.keys(pluginProperties())
|
|
29
|
-
.filter((pluginId) => !STEP_ONLY_PLUGIN_IDS.has(pluginId))
|
|
30
|
-
.sort();
|
|
31
|
-
}
|
|
32
|
-
const DEFINITION_REF_PREFIX = "#/definitions/";
|
|
33
|
-
function collectRefs(value, found) {
|
|
34
|
-
if (Array.isArray(value)) {
|
|
35
|
-
for (const item of value) {
|
|
36
|
-
collectRefs(item, found);
|
|
37
|
-
}
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
if (!isRecord(value)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
for (const [key, child] of Object.entries(value)) {
|
|
44
|
-
if (key === "$ref" &&
|
|
45
|
-
typeof child === "string" &&
|
|
46
|
-
child.startsWith(DEFINITION_REF_PREFIX)) {
|
|
47
|
-
found.add(child.slice(DEFINITION_REF_PREFIX.length));
|
|
48
|
-
continue;
|
|
49
|
-
}
|
|
50
|
-
collectRefs(child, found);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* The shared definitions block describes every plugin, so returning it whole
|
|
55
|
-
* costs ~124KB per call and overflows the caller's token budget. Keep only the
|
|
56
|
-
* definitions reachable from this plugin, following nested refs to closure.
|
|
57
|
-
*/
|
|
58
|
-
function reachableDefinitions(pluginSchema, allDefinitions) {
|
|
59
|
-
const needed = new Set();
|
|
60
|
-
collectRefs(pluginSchema, needed);
|
|
61
|
-
const pending = [...needed];
|
|
62
|
-
while (pending.length > 0) {
|
|
63
|
-
const name = pending.pop();
|
|
64
|
-
const nested = new Set();
|
|
65
|
-
collectRefs(allDefinitions[name], nested);
|
|
66
|
-
for (const ref of nested) {
|
|
67
|
-
if (!needed.has(ref)) {
|
|
68
|
-
needed.add(ref);
|
|
69
|
-
pending.push(ref);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
const pruned = {};
|
|
74
|
-
for (const name of [...needed].sort()) {
|
|
75
|
-
if (name in allDefinitions) {
|
|
76
|
-
pruned[name] = allDefinitions[name];
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return pruned;
|
|
80
|
-
}
|
|
81
|
-
export function getPluginConfigurationSchema(pluginId) {
|
|
82
|
-
const pluginSchema = pluginProperties()[pluginId];
|
|
83
|
-
if (!isRecord(pluginSchema) || STEP_ONLY_PLUGIN_IDS.has(pluginId)) {
|
|
84
|
-
throw new McpError(ErrorCode.InvalidParams, `Unknown plugin_id "${pluginId}". Known plugin ids: ${listPluginIds().join(", ")}.`);
|
|
85
|
-
}
|
|
86
|
-
const definitions = isRecord(datasourceConfigurationByTypeSchema.definitions)
|
|
87
|
-
? datasourceConfigurationByTypeSchema.definitions
|
|
88
|
-
: {};
|
|
89
|
-
return {
|
|
90
|
-
$schema: "http://json-schema.org/draft-07/schema#",
|
|
91
|
-
...pluginSchema,
|
|
92
|
-
definitions: reachableDefinitions(pluginSchema, definitions),
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
//# sourceMappingURL=plugin-configuration-schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-configuration-schema.js","sourceRoot":"","sources":["../../src/tools/plugin-configuration-schema.ts"],"names":[],"mappings":"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"}
|