@trycompai/mcp-server 0.3.3 → 0.3.5
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/bin/mcp-server.js +2319 -1685
- package/bin/mcp-server.js.map +23 -13
- package/esm/funcs/ismsISMSControllerSetCoverageV1.d.ts +16 -0
- package/esm/funcs/ismsISMSControllerSetCoverageV1.d.ts.map +1 -0
- package/esm/funcs/ismsISMSControllerSetCoverageV1.js +89 -0
- package/esm/funcs/ismsISMSControllerSetCoverageV1.js.map +1 -0
- package/esm/funcs/ismsISMSRegistersControllerCreateRowV1.d.ts +1 -1
- package/esm/funcs/ismsISMSRegistersControllerCreateRowV1.js +1 -1
- package/esm/funcs/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.d.ts +16 -0
- package/esm/funcs/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.d.ts.map +1 -0
- package/esm/funcs/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.js +89 -0
- package/esm/funcs/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.js.map +1 -0
- package/esm/funcs/policiesPoliciesControllerExtractPolicyDocumentV1.d.ts +16 -0
- package/esm/funcs/policiesPoliciesControllerExtractPolicyDocumentV1.d.ts.map +1 -0
- package/esm/funcs/policiesPoliciesControllerExtractPolicyDocumentV1.js +90 -0
- package/esm/funcs/policiesPoliciesControllerExtractPolicyDocumentV1.js.map +1 -0
- package/esm/landing-page.js +1 -1
- package/esm/lib/config.d.ts +3 -3
- package/esm/lib/config.js +3 -3
- package/esm/mcp-server/mcp-server.js +1 -1
- package/esm/mcp-server/server.d.ts.map +1 -1
- package/esm/mcp-server/server.js +7 -1
- package/esm/mcp-server/server.js.map +1 -1
- package/esm/mcp-server/tools/ismsISMSControllerSetCoverageV1.d.ts +7 -0
- package/esm/mcp-server/tools/ismsISMSControllerSetCoverageV1.d.ts.map +1 -0
- package/esm/mcp-server/tools/ismsISMSControllerSetCoverageV1.js +35 -0
- package/esm/mcp-server/tools/ismsISMSControllerSetCoverageV1.js.map +1 -0
- package/esm/mcp-server/tools/ismsISMSRegistersControllerCreateRowV1.js +1 -1
- package/esm/mcp-server/tools/ismsISMSRegistersControllerCreateRowV1.js.map +1 -1
- package/esm/mcp-server/tools/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.d.ts +7 -0
- package/esm/mcp-server/tools/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.d.ts.map +1 -0
- package/esm/mcp-server/tools/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.js +35 -0
- package/esm/mcp-server/tools/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.js.map +1 -0
- package/esm/mcp-server/tools/policiesPoliciesControllerExtractPolicyDocumentV1.d.ts +7 -0
- package/esm/mcp-server/tools/policiesPoliciesControllerExtractPolicyDocumentV1.d.ts.map +1 -0
- package/esm/mcp-server/tools/policiesPoliciesControllerExtractPolicyDocumentV1.js +35 -0
- package/esm/mcp-server/tools/policiesPoliciesControllerExtractPolicyDocumentV1.js.map +1 -0
- package/esm/models/createriskdto.d.ts +1 -1
- package/esm/models/ismscontrollersetcoveragev1op.d.ts +31 -0
- package/esm/models/ismscontrollersetcoveragev1op.d.ts.map +1 -0
- package/esm/models/ismscontrollersetcoveragev1op.js +28 -0
- package/esm/models/ismscontrollersetcoveragev1op.js.map +1 -0
- package/esm/models/ismsregisterscontrollercreaterowv1op.d.ts +181 -1
- package/esm/models/ismsregisterscontrollercreaterowv1op.d.ts.map +1 -1
- package/esm/models/ismsregisterscontrollercreaterowv1op.js +173 -1
- package/esm/models/ismsregisterscontrollercreaterowv1op.js.map +1 -1
- package/esm/models/ismsregisterscontrollerdeleterowv1op.d.ts +49 -1
- package/esm/models/ismsregisterscontrollerdeleterowv1op.d.ts.map +1 -1
- package/esm/models/ismsregisterscontrollerdeleterowv1op.js +44 -1
- package/esm/models/ismsregisterscontrollerdeleterowv1op.js.map +1 -1
- package/esm/models/ismsregisterscontrollerimportvendorsassoftwarev1op.d.ts +14 -0
- package/esm/models/ismsregisterscontrollerimportvendorsassoftwarev1op.d.ts.map +1 -0
- package/esm/models/ismsregisterscontrollerimportvendorsassoftwarev1op.js +14 -0
- package/esm/models/ismsregisterscontrollerimportvendorsassoftwarev1op.js.map +1 -0
- package/esm/models/ismsregisterscontrollerupdaterowv1op.d.ts +181 -1
- package/esm/models/ismsregisterscontrollerupdaterowv1op.d.ts.map +1 -1
- package/esm/models/ismsregisterscontrollerupdaterowv1op.js +173 -1
- package/esm/models/ismsregisterscontrollerupdaterowv1op.js.map +1 -1
- package/esm/models/policiescontrollerextractpolicydocumentv1op.d.ts +9 -0
- package/esm/models/policiescontrollerextractpolicydocumentv1op.d.ts.map +1 -0
- package/esm/models/policiescontrollerextractpolicydocumentv1op.js +12 -0
- package/esm/models/policiescontrollerextractpolicydocumentv1op.js.map +1 -0
- package/esm/models/policydocumentextractionresponsedto.d.ts +18 -0
- package/esm/models/policydocumentextractionresponsedto.d.ts.map +1 -0
- package/esm/models/policydocumentextractionresponsedto.js +13 -0
- package/esm/models/policydocumentextractionresponsedto.js.map +1 -0
- package/esm/models/requestpolicydocumentextractiondto.d.ts +6 -0
- package/esm/models/requestpolicydocumentextractiondto.d.ts.map +1 -0
- package/esm/models/requestpolicydocumentextractiondto.js +9 -0
- package/esm/models/requestpolicydocumentextractiondto.js.map +1 -0
- package/esm/models/riskscontrollercreateriskv1op.d.ts +1 -1
- package/esm/models/riskscontrollergetallrisksv1op.d.ts +2 -2
- package/esm/models/riskscontrollergetriskbyidv1op.d.ts +1 -1
- package/esm/models/riskscontrollerupdateriskv1op.d.ts +1 -1
- package/esm/models/updateriskdto.d.ts +1 -1
- package/esm/tool-names.d.ts.map +1 -1
- package/esm/tool-names.js +13 -1
- package/esm/tool-names.js.map +1 -1
- package/package.json +8 -4
- package/src/funcs/ismsISMSControllerSetCoverageV1.ts +154 -0
- package/src/funcs/ismsISMSRegistersControllerCreateRowV1.ts +1 -1
- package/src/funcs/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.ts +159 -0
- package/src/funcs/policiesPoliciesControllerExtractPolicyDocumentV1.ts +160 -0
- package/src/landing-page.ts +1 -1
- package/src/lib/config.ts +3 -3
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +7 -1
- package/src/mcp-server/tools/ismsISMSControllerSetCoverageV1.ts +44 -0
- package/src/mcp-server/tools/ismsISMSRegistersControllerCreateRowV1.ts +1 -1
- package/src/mcp-server/tools/ismsISMSRegistersControllerImportVendorsAsSoftwareV1.ts +45 -0
- package/src/mcp-server/tools/policiesPoliciesControllerExtractPolicyDocumentV1.ts +44 -0
- package/src/models/ismscontrollersetcoveragev1op.ts +67 -0
- package/src/models/ismsregisterscontrollercreaterowv1op.ts +249 -2
- package/src/models/ismsregisterscontrollerdeleterowv1op.ts +56 -2
- package/src/models/ismsregisterscontrollerimportvendorsassoftwarev1op.ts +38 -0
- package/src/models/ismsregisterscontrollerupdaterowv1op.ts +249 -2
- package/src/models/policiescontrollerextractpolicydocumentv1op.ts +25 -0
- package/src/models/policydocumentextractionresponsedto.ts +44 -0
- package/src/models/requestpolicydocumentextractiondto.ts +18 -0
- package/src/tool-names.ts +13 -1
|
@@ -6,11 +6,66 @@
|
|
|
6
6
|
import * as z from "zod";
|
|
7
7
|
import { ClosedEnum } from "../types/enums.js";
|
|
8
8
|
|
|
9
|
+
/**
|
|
10
|
+
* Which ISMS register the row belongs to.
|
|
11
|
+
*/
|
|
12
|
+
export const IsmsRegistersControllerUpdateRowV1Register = {
|
|
13
|
+
ContextIssues: "context-issues",
|
|
14
|
+
InterestedParties: "interested-parties",
|
|
15
|
+
Requirements: "requirements",
|
|
16
|
+
Objectives: "objectives",
|
|
17
|
+
Roles: "roles",
|
|
18
|
+
RoleAssignments: "role-assignments",
|
|
19
|
+
Metrics: "metrics",
|
|
20
|
+
Measurements: "measurements",
|
|
21
|
+
Audits: "audits",
|
|
22
|
+
AuditControls: "audit-controls",
|
|
23
|
+
AuditFindings: "audit-findings",
|
|
24
|
+
Reviews: "reviews",
|
|
25
|
+
ReviewInputs: "review-inputs",
|
|
26
|
+
ReviewActions: "review-actions",
|
|
27
|
+
Communications: "communications",
|
|
28
|
+
Obligations: "obligations",
|
|
29
|
+
KeyRecords: "key-records",
|
|
30
|
+
ApprovedSoftware: "approved-software",
|
|
31
|
+
} as const;
|
|
32
|
+
/**
|
|
33
|
+
* Which ISMS register the row belongs to.
|
|
34
|
+
*/
|
|
35
|
+
export type IsmsRegistersControllerUpdateRowV1Register = ClosedEnum<
|
|
36
|
+
typeof IsmsRegistersControllerUpdateRowV1Register
|
|
37
|
+
>;
|
|
38
|
+
|
|
39
|
+
export const IsmsRegistersControllerUpdateRowV1Register$zodSchema = z.enum([
|
|
40
|
+
"context-issues",
|
|
41
|
+
"interested-parties",
|
|
42
|
+
"requirements",
|
|
43
|
+
"objectives",
|
|
44
|
+
"roles",
|
|
45
|
+
"role-assignments",
|
|
46
|
+
"metrics",
|
|
47
|
+
"measurements",
|
|
48
|
+
"audits",
|
|
49
|
+
"audit-controls",
|
|
50
|
+
"audit-findings",
|
|
51
|
+
"reviews",
|
|
52
|
+
"review-inputs",
|
|
53
|
+
"review-actions",
|
|
54
|
+
"communications",
|
|
55
|
+
"obligations",
|
|
56
|
+
"key-records",
|
|
57
|
+
"approved-software",
|
|
58
|
+
]).describe("Which ISMS register the row belongs to.");
|
|
59
|
+
|
|
9
60
|
export const IsmsRegistersControllerUpdateRowV1Kind = {
|
|
10
61
|
Internal: "internal",
|
|
11
62
|
External: "external",
|
|
12
63
|
Recurring: "recurring",
|
|
13
64
|
Milestone: "milestone",
|
|
65
|
+
Legal: "legal",
|
|
66
|
+
Regulatory: "regulatory",
|
|
67
|
+
Contractual: "contractual",
|
|
68
|
+
Standard: "standard",
|
|
14
69
|
} as const;
|
|
15
70
|
export type IsmsRegistersControllerUpdateRowV1Kind = ClosedEnum<
|
|
16
71
|
typeof IsmsRegistersControllerUpdateRowV1Kind
|
|
@@ -21,6 +76,10 @@ export const IsmsRegistersControllerUpdateRowV1Kind$zodSchema = z.enum([
|
|
|
21
76
|
"external",
|
|
22
77
|
"recurring",
|
|
23
78
|
"milestone",
|
|
79
|
+
"legal",
|
|
80
|
+
"regulatory",
|
|
81
|
+
"contractual",
|
|
82
|
+
"standard",
|
|
24
83
|
]);
|
|
25
84
|
|
|
26
85
|
export const IsmsRegistersControllerUpdateRowV1Status = {
|
|
@@ -195,6 +254,132 @@ export const IsmsRegistersControllerUpdateRowV1Type$zodSchema = z.enum([
|
|
|
195
254
|
"observation",
|
|
196
255
|
]);
|
|
197
256
|
|
|
257
|
+
export const IsmsRegistersControllerUpdateRowV1Audience = {
|
|
258
|
+
Internal: "internal",
|
|
259
|
+
External: "external",
|
|
260
|
+
} as const;
|
|
261
|
+
export type IsmsRegistersControllerUpdateRowV1Audience = ClosedEnum<
|
|
262
|
+
typeof IsmsRegistersControllerUpdateRowV1Audience
|
|
263
|
+
>;
|
|
264
|
+
|
|
265
|
+
export const IsmsRegistersControllerUpdateRowV1Audience$zodSchema = z.enum([
|
|
266
|
+
"internal",
|
|
267
|
+
"external",
|
|
268
|
+
]);
|
|
269
|
+
|
|
270
|
+
export const IsmsRegistersControllerUpdateRowV1Frequency = {
|
|
271
|
+
OnJoining: "on_joining",
|
|
272
|
+
OnPublication: "on_publication",
|
|
273
|
+
AsItHappens: "as_it_happens",
|
|
274
|
+
Monthly: "monthly",
|
|
275
|
+
Quarterly: "quarterly",
|
|
276
|
+
Annually: "annually",
|
|
277
|
+
OnRequest: "on_request",
|
|
278
|
+
WithinStatutoryDeadline: "within_statutory_deadline",
|
|
279
|
+
IfNeeded: "if_needed",
|
|
280
|
+
OnJoiningAndAnnually: "on_joining_and_annually",
|
|
281
|
+
AfterEachAudit: "after_each_audit",
|
|
282
|
+
OnOnboardingAndAsNeeded: "on_onboarding_and_as_needed",
|
|
283
|
+
PerAuditCycle: "per_audit_cycle",
|
|
284
|
+
} as const;
|
|
285
|
+
export type IsmsRegistersControllerUpdateRowV1Frequency = ClosedEnum<
|
|
286
|
+
typeof IsmsRegistersControllerUpdateRowV1Frequency
|
|
287
|
+
>;
|
|
288
|
+
|
|
289
|
+
export const IsmsRegistersControllerUpdateRowV1Frequency$zodSchema = z.enum([
|
|
290
|
+
"on_joining",
|
|
291
|
+
"on_publication",
|
|
292
|
+
"as_it_happens",
|
|
293
|
+
"monthly",
|
|
294
|
+
"quarterly",
|
|
295
|
+
"annually",
|
|
296
|
+
"on_request",
|
|
297
|
+
"within_statutory_deadline",
|
|
298
|
+
"if_needed",
|
|
299
|
+
"on_joining_and_annually",
|
|
300
|
+
"after_each_audit",
|
|
301
|
+
"on_onboarding_and_as_needed",
|
|
302
|
+
"per_audit_cycle",
|
|
303
|
+
]);
|
|
304
|
+
|
|
305
|
+
export const IsmsRegistersControllerUpdateRowV1Channel = {
|
|
306
|
+
Email: "email",
|
|
307
|
+
SlackOrTeams: "slack_or_teams",
|
|
308
|
+
CompanyMeeting: "company_meeting",
|
|
309
|
+
TrustCentre: "trust_centre",
|
|
310
|
+
CompAiPortal: "comp_ai_portal",
|
|
311
|
+
TrainingPlatform: "training_platform",
|
|
312
|
+
WrittenNotice: "written_notice",
|
|
313
|
+
} as const;
|
|
314
|
+
export type IsmsRegistersControllerUpdateRowV1Channel = ClosedEnum<
|
|
315
|
+
typeof IsmsRegistersControllerUpdateRowV1Channel
|
|
316
|
+
>;
|
|
317
|
+
|
|
318
|
+
export const IsmsRegistersControllerUpdateRowV1Channel$zodSchema = z.enum([
|
|
319
|
+
"email",
|
|
320
|
+
"slack_or_teams",
|
|
321
|
+
"company_meeting",
|
|
322
|
+
"trust_centre",
|
|
323
|
+
"comp_ai_portal",
|
|
324
|
+
"training_platform",
|
|
325
|
+
"written_notice",
|
|
326
|
+
]);
|
|
327
|
+
|
|
328
|
+
export const IsmsRegistersControllerUpdateRowV1Rotation = {
|
|
329
|
+
Automatic: "automatic",
|
|
330
|
+
Annually: "annually",
|
|
331
|
+
OnChange: "on_change",
|
|
332
|
+
OnChangeOrAnnually: "on_change_or_annually",
|
|
333
|
+
OnOffboarding: "on_offboarding",
|
|
334
|
+
NotRotated: "not_rotated",
|
|
335
|
+
} as const;
|
|
336
|
+
export type IsmsRegistersControllerUpdateRowV1Rotation = ClosedEnum<
|
|
337
|
+
typeof IsmsRegistersControllerUpdateRowV1Rotation
|
|
338
|
+
>;
|
|
339
|
+
|
|
340
|
+
export const IsmsRegistersControllerUpdateRowV1Rotation$zodSchema = z.enum([
|
|
341
|
+
"automatic",
|
|
342
|
+
"annually",
|
|
343
|
+
"on_change",
|
|
344
|
+
"on_change_or_annually",
|
|
345
|
+
"on_offboarding",
|
|
346
|
+
"not_rotated",
|
|
347
|
+
]);
|
|
348
|
+
|
|
349
|
+
export const IsmsRegistersControllerUpdateRowV1UsedWhere = {
|
|
350
|
+
EndUserDevices: "end_user_devices",
|
|
351
|
+
ProductionSystems: "production_systems",
|
|
352
|
+
Both: "both",
|
|
353
|
+
CloudService: "cloud_service",
|
|
354
|
+
} as const;
|
|
355
|
+
export type IsmsRegistersControllerUpdateRowV1UsedWhere = ClosedEnum<
|
|
356
|
+
typeof IsmsRegistersControllerUpdateRowV1UsedWhere
|
|
357
|
+
>;
|
|
358
|
+
|
|
359
|
+
export const IsmsRegistersControllerUpdateRowV1UsedWhere$zodSchema = z.enum([
|
|
360
|
+
"end_user_devices",
|
|
361
|
+
"production_systems",
|
|
362
|
+
"both",
|
|
363
|
+
"cloud_service",
|
|
364
|
+
]);
|
|
365
|
+
|
|
366
|
+
export const IsmsRegistersControllerUpdateRowV1Licence = {
|
|
367
|
+
Commercial: "commercial",
|
|
368
|
+
OpenSource: "open_source",
|
|
369
|
+
FreeTier: "free_tier",
|
|
370
|
+
Internal: "internal",
|
|
371
|
+
} as const;
|
|
372
|
+
export type IsmsRegistersControllerUpdateRowV1Licence = ClosedEnum<
|
|
373
|
+
typeof IsmsRegistersControllerUpdateRowV1Licence
|
|
374
|
+
>;
|
|
375
|
+
|
|
376
|
+
export const IsmsRegistersControllerUpdateRowV1Licence$zodSchema = z.enum([
|
|
377
|
+
"commercial",
|
|
378
|
+
"open_source",
|
|
379
|
+
"free_tier",
|
|
380
|
+
"internal",
|
|
381
|
+
]);
|
|
382
|
+
|
|
198
383
|
export type IsmsRegistersControllerUpdateRowV1Attendee = {
|
|
199
384
|
memberId: string;
|
|
200
385
|
name: string;
|
|
@@ -305,18 +490,49 @@ export type IsmsRegistersControllerUpdateRowV1RequestBody = {
|
|
|
305
490
|
whatItCovers?: string | undefined;
|
|
306
491
|
discussionNotes?: string | null | undefined;
|
|
307
492
|
discussed?: boolean | undefined;
|
|
493
|
+
what?: string | undefined;
|
|
494
|
+
audience?: IsmsRegistersControllerUpdateRowV1Audience | undefined;
|
|
495
|
+
recipients?: string | undefined;
|
|
496
|
+
ownerRoleKey?: string | null | undefined;
|
|
497
|
+
frequency?: IsmsRegistersControllerUpdateRowV1Frequency | undefined;
|
|
498
|
+
channel?: IsmsRegistersControllerUpdateRowV1Channel | undefined;
|
|
499
|
+
contactRef?: string | null | undefined;
|
|
500
|
+
evidenceRef?: string | undefined;
|
|
501
|
+
obligation?: string | undefined;
|
|
502
|
+
jurisdiction?: string | null | undefined;
|
|
503
|
+
howWeMeetIt?: string | null | undefined;
|
|
504
|
+
consequence?: string | null | undefined;
|
|
505
|
+
protects?: string | undefined;
|
|
506
|
+
managedIn?: string | undefined;
|
|
507
|
+
rotation?: IsmsRegistersControllerUpdateRowV1Rotation | undefined;
|
|
508
|
+
rotationNote?: string | null | undefined;
|
|
509
|
+
accessMemberId?: string | null | undefined;
|
|
510
|
+
accessRoleKey?: string | null | undefined;
|
|
511
|
+
accessText?: string | null | undefined;
|
|
512
|
+
purpose?: string | null | undefined;
|
|
513
|
+
vendorId?: string | null | undefined;
|
|
514
|
+
usedWhere?: IsmsRegistersControllerUpdateRowV1UsedWhere | null | undefined;
|
|
515
|
+
licence?: IsmsRegistersControllerUpdateRowV1Licence | null | undefined;
|
|
308
516
|
position?: number | undefined;
|
|
309
517
|
};
|
|
310
518
|
|
|
311
519
|
export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
312
520
|
IsmsRegistersControllerUpdateRowV1RequestBody
|
|
313
521
|
> = z.object({
|
|
522
|
+
accessMemberId: z.string().nullable().optional(),
|
|
523
|
+
accessRoleKey: z.string().nullable().optional().describe(
|
|
524
|
+
"ISMS role that holds the key when no member is named (e.g. spo)",
|
|
525
|
+
),
|
|
526
|
+
accessText: z.string().nullable().optional().describe(
|
|
527
|
+
"Free-text access holder, for answers no picker can express (e.g. \"Each individual\")",
|
|
528
|
+
),
|
|
314
529
|
analyzeMemberId: z.string().nullable().optional(),
|
|
315
530
|
attendees: z.array(
|
|
316
531
|
z.lazy(() => IsmsRegistersControllerUpdateRowV1Attendee$zodSchema),
|
|
317
532
|
).optional().describe(
|
|
318
533
|
"Attendees frozen at selection (members picked from People)",
|
|
319
534
|
),
|
|
535
|
+
audience: IsmsRegistersControllerUpdateRowV1Audience$zodSchema.optional(),
|
|
320
536
|
auditCourse: z.string().nullable().optional(),
|
|
321
537
|
auditDueDate: z.string().nullable().optional(),
|
|
322
538
|
auditEvidenceRef: z.string().nullable().optional(),
|
|
@@ -335,12 +551,17 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
335
551
|
category: z.string().optional(),
|
|
336
552
|
chairName: z.string().nullable().optional(),
|
|
337
553
|
changesText: z.string().nullable().optional(),
|
|
554
|
+
channel: IsmsRegistersControllerUpdateRowV1Channel$zodSchema.optional(),
|
|
338
555
|
clauseOrControl: z.string().nullable().optional(),
|
|
339
556
|
closureEvidence: z.string().nullable().optional(),
|
|
340
557
|
conclusionNotes: z.string().nullable().optional(),
|
|
341
558
|
conclusionVerdict:
|
|
342
559
|
IsmsRegistersControllerUpdateRowV1ConclusionVerdict$zodSchema.nullable()
|
|
343
560
|
.optional(),
|
|
561
|
+
consequence: z.string().nullable().optional(),
|
|
562
|
+
contactRef: z.string().nullable().optional().describe(
|
|
563
|
+
"External rows only: the body name, reporting route and any reference number (A.5.5)",
|
|
564
|
+
),
|
|
344
565
|
controlId: z.string().nullable().optional(),
|
|
345
566
|
controlRef: z.string().optional(),
|
|
346
567
|
criteria: z.string().optional(),
|
|
@@ -350,12 +571,19 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
350
571
|
discussionNotes: z.string().nullable().optional(),
|
|
351
572
|
dueDate: z.string().nullable().optional(),
|
|
352
573
|
effect: z.string().optional(),
|
|
574
|
+
evidenceRef: z.string().optional(),
|
|
353
575
|
evidenceRetained: z.string().nullable().optional(),
|
|
576
|
+
frequency: IsmsRegistersControllerUpdateRowV1Frequency$zodSchema.optional(),
|
|
354
577
|
gap: z.string().nullable().optional(),
|
|
578
|
+
howWeMeetIt: z.string().nullable().optional(),
|
|
355
579
|
inputRef: z.string().optional(),
|
|
356
580
|
interestedPartyId: z.string().optional(),
|
|
357
581
|
isActive: z.boolean().optional(),
|
|
582
|
+
jurisdiction: z.string().nullable().optional(),
|
|
358
583
|
kind: IsmsRegistersControllerUpdateRowV1Kind$zodSchema.optional(),
|
|
584
|
+
licence: IsmsRegistersControllerUpdateRowV1Licence$zodSchema.nullable()
|
|
585
|
+
.optional(),
|
|
586
|
+
managedIn: z.string().optional(),
|
|
359
587
|
measurementMethod: z.string().optional(),
|
|
360
588
|
meetingDate: z.string().nullable().optional(),
|
|
361
589
|
memberId: z.string().optional(),
|
|
@@ -372,7 +600,11 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
372
600
|
objectiveId: z.string().nullable().optional().describe(
|
|
373
601
|
"Deprecated: objectives now take their numbers from a metric, not the reverse.",
|
|
374
602
|
),
|
|
603
|
+
obligation: z.string().optional(),
|
|
375
604
|
ownerMemberId: z.string().optional(),
|
|
605
|
+
ownerRoleKey: z.string().nullable().optional().describe(
|
|
606
|
+
"ISMS role accountable when no member is assigned (e.g. spo, top_management, internal_auditor)",
|
|
607
|
+
),
|
|
376
608
|
partyName: z.string().optional(),
|
|
377
609
|
periodStart: z.string().optional().describe(
|
|
378
610
|
"First day of the covered period (YYYY-MM-DD), aligned to the metric cadence",
|
|
@@ -381,6 +613,9 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
381
613
|
plannedEndDate: z.string().nullable().optional(),
|
|
382
614
|
plannedStartDate: z.string().nullable().optional(),
|
|
383
615
|
position: z.int().optional(),
|
|
616
|
+
protects: z.string().optional(),
|
|
617
|
+
purpose: z.string().nullable().optional(),
|
|
618
|
+
recipients: z.string().optional(),
|
|
384
619
|
remediationAction: z.string().nullable().optional(),
|
|
385
620
|
remediationDueDate: z.string().nullable().optional(),
|
|
386
621
|
requiredCompetence: z.string().optional(),
|
|
@@ -390,6 +625,10 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
390
625
|
.optional(),
|
|
391
626
|
reviewId: z.string().optional(),
|
|
392
627
|
roleId: z.string().optional(),
|
|
628
|
+
rotation: IsmsRegistersControllerUpdateRowV1Rotation$zodSchema.optional(),
|
|
629
|
+
rotationNote: z.string().nullable().optional().describe(
|
|
630
|
+
"Only kept when rotation is not_rotated",
|
|
631
|
+
),
|
|
393
632
|
scope: z.string().optional(),
|
|
394
633
|
signoffAuditorDate: z.string().nullable().optional(),
|
|
395
634
|
signoffAuditorName: z.string().nullable().optional(),
|
|
@@ -414,7 +653,13 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
414
653
|
treatment: z.string().optional(),
|
|
415
654
|
type: IsmsRegistersControllerUpdateRowV1Type$zodSchema.optional(),
|
|
416
655
|
unit: IsmsRegistersControllerUpdateRowV1Unit$zodSchema.nullable().optional(),
|
|
656
|
+
usedWhere: IsmsRegistersControllerUpdateRowV1UsedWhere$zodSchema.nullable()
|
|
657
|
+
.optional(),
|
|
417
658
|
value: z.string().optional(),
|
|
659
|
+
vendorId: z.string().nullable().optional().describe(
|
|
660
|
+
"Links the row to a vendor; the name then renders live",
|
|
661
|
+
),
|
|
662
|
+
what: z.string().optional(),
|
|
418
663
|
whatIsMeasured: z.string().optional(),
|
|
419
664
|
whatItCovers: z.string().optional(),
|
|
420
665
|
whatWasTested: z.string().optional(),
|
|
@@ -422,7 +667,7 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType<
|
|
|
422
667
|
}).describe("Register row fields (per-register; validated at runtime by zod)");
|
|
423
668
|
|
|
424
669
|
export type IsmsRegistersControllerUpdateRowV1Request = {
|
|
425
|
-
register:
|
|
670
|
+
register: IsmsRegistersControllerUpdateRowV1Register;
|
|
426
671
|
rowId: string;
|
|
427
672
|
body: IsmsRegistersControllerUpdateRowV1RequestBody;
|
|
428
673
|
};
|
|
@@ -434,6 +679,8 @@ export const IsmsRegistersControllerUpdateRowV1Request$zodSchema: z.ZodType<
|
|
|
434
679
|
.describe(
|
|
435
680
|
"Register row fields (per-register; validated at runtime by zod)",
|
|
436
681
|
),
|
|
437
|
-
register:
|
|
682
|
+
register: IsmsRegistersControllerUpdateRowV1Register$zodSchema.describe(
|
|
683
|
+
"Which ISMS register the row belongs to.",
|
|
684
|
+
),
|
|
438
685
|
rowId: z.string(),
|
|
439
686
|
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 4ddeee64390b
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import * as z from "zod";
|
|
7
|
+
import {
|
|
8
|
+
RequestPolicyDocumentExtractionDto,
|
|
9
|
+
RequestPolicyDocumentExtractionDto$zodSchema,
|
|
10
|
+
} from "./requestpolicydocumentextractiondto.js";
|
|
11
|
+
|
|
12
|
+
export type PoliciesControllerExtractPolicyDocumentV1Request = {
|
|
13
|
+
xOrganizationId?: string | undefined;
|
|
14
|
+
id: string;
|
|
15
|
+
body?: RequestPolicyDocumentExtractionDto | undefined;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export const PoliciesControllerExtractPolicyDocumentV1Request$zodSchema:
|
|
19
|
+
z.ZodType<PoliciesControllerExtractPolicyDocumentV1Request> = z.object({
|
|
20
|
+
body: RequestPolicyDocumentExtractionDto$zodSchema.optional(),
|
|
21
|
+
id: z.string().describe("Policy ID"),
|
|
22
|
+
xOrganizationId: z.string().describe(
|
|
23
|
+
"Organization ID (required for session auth, optional for API key auth)",
|
|
24
|
+
).optional(),
|
|
25
|
+
});
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 2f5cc30d6f75
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import * as z from "zod";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* The version the read targets, or null when the policy has no version to read into.
|
|
10
|
+
*/
|
|
11
|
+
export type VersionId = {};
|
|
12
|
+
|
|
13
|
+
export const VersionId$zodSchema: z.ZodType<VersionId> = z.object({}).describe(
|
|
14
|
+
"The version the read targets, or null when the policy has no version to read into.",
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Null when the read was queued. Otherwise why it was not, so a caller never waits for text that is not coming: `no_version` / `no_document` (nothing to read), `already_has_content` (the version already has text), `pending_approval` or `published_version` (the target may not be written to), `document_replaced` (the attached file changed), `queue_unavailable` (the job could not be scheduled — retry).
|
|
19
|
+
*/
|
|
20
|
+
export type Reason = {};
|
|
21
|
+
|
|
22
|
+
export const Reason$zodSchema: z.ZodType<Reason> = z.object({}).describe(
|
|
23
|
+
"Null when the read was queued. Otherwise why it was not, so a caller never waits for text that is not coming: `no_version` / `no_document` (nothing to read), `already_has_content` (the version already has text), `pending_approval` or `published_version` (the target may not be written to), `document_replaced` (the attached file changed), `queue_unavailable` (the job could not be scheduled — retry).",
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
export type PolicyDocumentExtractionResponseDto = {
|
|
27
|
+
queued: boolean;
|
|
28
|
+
versionId: VersionId | null;
|
|
29
|
+
reason?: Reason | null | undefined;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export const PolicyDocumentExtractionResponseDto$zodSchema: z.ZodType<
|
|
33
|
+
PolicyDocumentExtractionResponseDto
|
|
34
|
+
> = z.object({
|
|
35
|
+
queued: z.boolean().describe(
|
|
36
|
+
"True when a read of the attached document was queued. False when no read will happen — see `reason`.",
|
|
37
|
+
),
|
|
38
|
+
reason: z.lazy(() => Reason$zodSchema).nullable().optional().describe(
|
|
39
|
+
"Null when the read was queued. Otherwise why it was not, so a caller never waits for text that is not coming: `no_version` / `no_document` (nothing to read), `already_has_content` (the version already has text), `pending_approval` or `published_version` (the target may not be written to), `document_replaced` (the attached file changed), `queue_unavailable` (the job could not be scheduled — retry).",
|
|
40
|
+
),
|
|
41
|
+
versionId: z.lazy(() => VersionId$zodSchema).nullable().describe(
|
|
42
|
+
"The version the read targets, or null when the policy has no version to read into.",
|
|
43
|
+
),
|
|
44
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: ece7be891060
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import * as z from "zod";
|
|
7
|
+
|
|
8
|
+
export type RequestPolicyDocumentExtractionDto = {
|
|
9
|
+
versionId?: string | undefined;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export const RequestPolicyDocumentExtractionDto$zodSchema: z.ZodType<
|
|
13
|
+
RequestPolicyDocumentExtractionDto
|
|
14
|
+
> = z.object({
|
|
15
|
+
versionId: z.string().optional().describe(
|
|
16
|
+
"Optional version ID whose attached document should be read. Omit to use the policy's current version.",
|
|
17
|
+
),
|
|
18
|
+
});
|
package/src/tool-names.ts
CHANGED
|
@@ -576,6 +576,10 @@ export const toolNames: Array<{ name: string; description: string }>= [
|
|
|
576
576
|
"name": "confirm-policy-pdf-uploaded",
|
|
577
577
|
"description": "Confirm a policy PDF upload completed\n\nLinks an uploaded PDF to a compliance policy after the file has been PUT to a presigned S3 URL. Call this after request-policy-pdf-upload-url returned an s3Key and you successfully uploaded the file bytes to that URL. The endpoint verifies the file exists in S3 before linking it to the policy or version."
|
|
578
578
|
},
|
|
579
|
+
{
|
|
580
|
+
"name": "extract-policy-document",
|
|
581
|
+
"description": "Re-read an attached policy document into the editor\n\nQueues a fresh read of the PDF already attached to a policy, storing its text as the version's editor content. Use when an uploaded policy still reads as empty because its first read never produced any text."
|
|
582
|
+
},
|
|
579
583
|
{
|
|
580
584
|
"name": "get-pdf-url",
|
|
581
585
|
"description": "Get signed URL for policy PDF (alternate path)\n\nGet signed URL for policy PDF (alternate path) in Comp AI. Create, version, publish, export, map, and improve compliance policies with AI-assisted drafting and approval workflows."
|
|
@@ -1260,6 +1264,10 @@ export const toolNames: Array<{ name: string; description: string }>= [
|
|
|
1260
1264
|
"name": "remove-control",
|
|
1261
1265
|
"description": "Remove a control mapping from an ISMS document\n\nRemoves the mapping between an ISMS document and one organization control. Takes the control id, not the link row id. The control itself is not deleted, and unlinking a control that was never linked succeeds silently."
|
|
1262
1266
|
},
|
|
1267
|
+
{
|
|
1268
|
+
"name": "set-coverage",
|
|
1269
|
+
"description": "Set how much of an ISMS document Comp AI holds\n\nMarks a whole ISMS document as included, maintained outside Comp AI, or not applicable, which requires a written justification. External renders a pointer to where the content lives. Per-section coverage is not available yet."
|
|
1270
|
+
},
|
|
1263
1271
|
{
|
|
1264
1272
|
"name": "generate",
|
|
1265
1273
|
"description": "Derive Context-of-the-Organization issues\n\nRegenerates one ISMS document's derived content based on its type and refreshes the drift baseline. Manually added register rows and non-empty narratives are preserved; derived rows are replaced. Reverts an approved document to draft."
|
|
@@ -1306,7 +1314,7 @@ export const toolNames: Array<{ name: string; description: string }>= [
|
|
|
1306
1314
|
},
|
|
1307
1315
|
{
|
|
1308
1316
|
"name": "create-row",
|
|
1309
|
-
"description": "Create a row in an ISMS register\n\
|
|
1317
|
+
"description": "Create a row in an ISMS register\n\nCreate a row in an ISMS register in Comp AI. Build and maintain the ISO 27001 ISMS document set — scope, leadership commitment, context, interested parties, objectives, roles, monitoring, internal audit, and management review."
|
|
1310
1318
|
},
|
|
1311
1319
|
{
|
|
1312
1320
|
"name": "update-row",
|
|
@@ -1320,6 +1328,10 @@ export const toolNames: Array<{ name: string; description: string }>= [
|
|
|
1320
1328
|
"name": "bulk-create-measurements",
|
|
1321
1329
|
"description": "Record measurements for several metrics/periods in one save (Metrics due / backfill)\n\nRecord measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI. Build and maintain the ISO 27001 ISMS document set — scope, leadership commitment, context, interested parties, objectives, roles."
|
|
1322
1330
|
},
|
|
1331
|
+
{
|
|
1332
|
+
"name": "import-vendors-as-software",
|
|
1333
|
+
"description": "Add vendors to the Approved Software Register in one action\n\nAdds the chosen vendors as approved software rows in one transaction. Vendors already listed are skipped, not duplicated. \"Where it is used\" is left unanswered: a supplier record does not say where its product runs."
|
|
1334
|
+
},
|
|
1323
1335
|
{
|
|
1324
1336
|
"name": "save-narrative",
|
|
1325
1337
|
"description": "Save a singleton document narrative\n\nReplaces the working draft narrative of a document type that stores one, such as ISMS scope, leadership commitment, internal audit or risk assessment methodology. The narrative object is fully replaced, not merged."
|