@pactosigna/mcp-server 0.1.23 → 0.1.25

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.
Files changed (2) hide show
  1. package/dist/index.js +76 -103
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -21758,11 +21758,6 @@ var DEVICE_DOCUMENT_TYPES = [
21758
21758
  // Product (ISO 13485 §7.3)
21759
21759
  "product_development_plan",
21760
21760
  "intended_use",
21761
- // Release management (IEC 62304 §5.7)
21762
- "release_plan",
21763
- // Change management (ISO 13485 §7.3.5)
21764
- "design_review",
21765
- "release_notes",
21766
21761
  // Software test plan (IEC 62304 §5.7)
21767
21762
  "software_test_plan"
21768
21763
  ];
@@ -21813,11 +21808,6 @@ var DOCUMENT_TYPES = {
21813
21808
  // Product (ISO 13485 §7.3)
21814
21809
  product_development_plan: "Product Development Plan",
21815
21810
  intended_use: "Intended Use",
21816
- // Release management (IEC 62304 §5.7)
21817
- release_plan: "Release Plan",
21818
- // Change management (ISO 13485 §7.3.5)
21819
- design_review: "Design Review",
21820
- release_notes: "Release Notes",
21821
21811
  // Supplier management (ISO 13485 §7.4)
21822
21812
  supplier: "Supplier",
21823
21813
  // Internal audit management (ISO 13485 §8.2.2)
@@ -21844,9 +21834,6 @@ var REQUIRED_SECTIONS = {
21844
21834
  user_need: ["User Story", "Validation Criteria"],
21845
21835
  architecture: ["Purpose", "Architecture Overview", "Interfaces"],
21846
21836
  detailed_design: ["Purpose", "Detailed Design", "Interfaces"],
21847
- release_plan: ["Scope", "Applicable Plans", "Release-Specific Criteria", "Known Anomalies"],
21848
- design_review: ["Review Scope", "Attendees", "Findings", "Actions", "Conclusion"],
21849
- release_notes: ["Changes", "Known Issues"],
21850
21837
  audit_schedule: ["Scope", "Audit Criteria"],
21851
21838
  audit_report: ["Scope", "Methodology", "Findings", "Conclusion"],
21852
21839
  // Deprecated: management reviews are in-app entities, not git-native documents (#707)
@@ -22525,11 +22512,6 @@ var DocumentTypeSchema = external_exports.enum([
22525
22512
  // Product (ISO 13485 §7.3)
22526
22513
  "product_development_plan",
22527
22514
  "intended_use",
22528
- // Release management (IEC 62304 §5.7)
22529
- "release_plan",
22530
- // Change management (ISO 13485 §7.3.5)
22531
- "design_review",
22532
- "release_notes",
22533
22515
  // Supplier management (ISO 13485 §7.4)
22534
22516
  "supplier",
22535
22517
  // Internal audit management (ISO 13485 §8.2.2)
@@ -23224,63 +23206,9 @@ var DeviceDocumentTypeSchema = external_exports.enum([
23224
23206
  // Product (ISO 13485 §7.3)
23225
23207
  "product_development_plan",
23226
23208
  "intended_use",
23227
- // Release management (IEC 62304 §5.7)
23228
- "release_plan",
23229
- // Change management (ISO 13485 §7.3.5)
23230
- "design_review",
23231
- "release_notes",
23232
23209
  // Software test plan (IEC 62304 §5.7)
23233
23210
  "software_test_plan"
23234
23211
  ]);
23235
- var ReleasePlanFrontmatterSchema = external_exports.object({
23236
- id: external_exports.string().min(1),
23237
- title: external_exports.string().min(1),
23238
- type: external_exports.literal("release_plan").optional(),
23239
- status: external_exports.string().optional(),
23240
- author: external_exports.string().optional(),
23241
- reviewers: external_exports.array(external_exports.string()).optional(),
23242
- approvers: external_exports.array(external_exports.string()).optional(),
23243
- version: external_exports.string().optional(),
23244
- target_date: external_exports.string().optional(),
23245
- applicable_plans: external_exports.array(external_exports.string()).optional()
23246
- });
23247
- var SuspectedLinkDispositionSchema = external_exports.enum(["included_in_release", "not_impacted"]);
23248
- var SuspectedLinkNeighborSchema = external_exports.object({
23249
- document: external_exports.string().min(1),
23250
- direction: external_exports.enum(["upstream", "downstream"]),
23251
- disposition: SuspectedLinkDispositionSchema,
23252
- /** Required when disposition is 'not_impacted' */
23253
- rationale: external_exports.string().min(1).optional()
23254
- });
23255
- var SuspectedLinkGroupSchema = external_exports.object({
23256
- triggered_by: external_exports.string().min(1),
23257
- neighbors: external_exports.array(SuspectedLinkNeighborSchema).min(1)
23258
- });
23259
- var DesignReviewFrontmatterSchema = external_exports.object({
23260
- id: external_exports.string().min(1),
23261
- title: external_exports.string().min(1),
23262
- type: external_exports.literal("design_review").optional(),
23263
- status: external_exports.string().optional(),
23264
- author: external_exports.string().optional(),
23265
- reviewers: external_exports.array(external_exports.string()).optional(),
23266
- approvers: external_exports.array(external_exports.string()).optional(),
23267
- /** Optional link to a Release Plan document (e.g. "RP-001") */
23268
- release_plan: external_exports.string().optional(),
23269
- /** Acknowledged suspected links — one-up/one-down neighbor analysis */
23270
- suspected_links: external_exports.array(SuspectedLinkGroupSchema).optional()
23271
- });
23272
- var ReleaseNotesAudienceSchema = external_exports.enum(["customer", "technical"]);
23273
- var ReleaseNotesFrontmatterSchema = external_exports.object({
23274
- id: external_exports.string().min(1),
23275
- title: external_exports.string().min(1),
23276
- type: external_exports.literal("release_notes").optional(),
23277
- status: RiskDocumentStatusSchema,
23278
- author: external_exports.string().optional(),
23279
- reviewers: external_exports.array(external_exports.string()).optional(),
23280
- approvers: external_exports.array(external_exports.string()).optional(),
23281
- audience: ReleaseNotesAudienceSchema,
23282
- release_version: external_exports.string().min(1)
23283
- });
23284
23212
  var RetentionPolicySchema = external_exports.object({
23285
23213
  /** Default retention period in years for all record types */
23286
23214
  defaultPeriodYears: external_exports.number().int().min(1).max(30).default(10),
@@ -23522,14 +23450,6 @@ var AuditActionSchema = external_exports.enum([
23522
23450
  "dco.obligation_fulfilled",
23523
23451
  "dco.approved",
23524
23452
  "dco.effective",
23525
- // Design Reviews
23526
- "design_review.created",
23527
- "design_review.updated",
23528
- "design_review.deleted",
23529
- "design_review.submitted",
23530
- "design_review.signature_added",
23531
- "design_review.signed",
23532
- "design_review.cancelled",
23533
23453
  // CAPAs
23534
23454
  "capa.created",
23535
23455
  "capa.updated",
@@ -23602,6 +23522,8 @@ var AuditActionSchema = external_exports.enum([
23602
23522
  // Review Types
23603
23523
  "review_type.created",
23604
23524
  "review_type.updated",
23525
+ // Components (SOUP/SBOM enrichment)
23526
+ "component.enriched",
23605
23527
  // Audit
23606
23528
  "audit_log.exported"
23607
23529
  ]);
@@ -23619,7 +23541,6 @@ var ResourceTypeSchema = external_exports.enum([
23619
23541
  "qms",
23620
23542
  "device",
23621
23543
  "dco",
23622
- "design_review",
23623
23544
  "signing_request",
23624
23545
  "capa",
23625
23546
  "complaint",
@@ -23635,7 +23556,8 @@ var ResourceTypeSchema = external_exports.enum([
23635
23556
  "qualityReview",
23636
23557
  "reviewType",
23637
23558
  "audit_log",
23638
- "risk_matrix"
23559
+ "risk_matrix",
23560
+ "component"
23639
23561
  ]);
23640
23562
  var DocumentSourceTypeSchema = external_exports.enum([
23641
23563
  "markdown",
@@ -23684,6 +23606,19 @@ var GetDeviceGapsQuerySchema = external_exports.object({
23684
23606
  var DocumentIdParamSchema = external_exports.object({
23685
23607
  documentId: external_exports.string().min(1)
23686
23608
  });
23609
+ var ComponentIdParamSchema = external_exports.object({
23610
+ documentId: external_exports.string().min(1),
23611
+ componentId: external_exports.string().min(1)
23612
+ });
23613
+ var UpdateComponentRequestSchema = external_exports.object({
23614
+ organizationId: external_exports.string().min(1),
23615
+ soupCategory: external_exports.enum(["package", "vendor", "runtime"]).optional(),
23616
+ soupSafetyClass: external_exports.enum(["A", "B", "C"]).optional(),
23617
+ functionalRequirements: external_exports.string().optional(),
23618
+ hardwareRequirements: external_exports.string().optional(),
23619
+ anomalyAssessment: external_exports.enum(["not_assessed", "assessed_acceptable", "assessed_mitigated", "monitoring"]).optional(),
23620
+ anomalyNotes: external_exports.string().optional()
23621
+ });
23687
23622
  var ChangelogEntryResponseSchema = external_exports.object({
23688
23623
  id: external_exports.string(),
23689
23624
  changeType: ChangeTypeSchema,
@@ -23788,7 +23723,16 @@ var ComponentResponseSchema = external_exports.object({
23788
23723
  category: external_exports.string().optional(),
23789
23724
  supplierId: external_exports.string().optional(),
23790
23725
  sourceFormat: external_exports.enum(["markdown_table", "cyclonedx", "spdx"]),
23791
- purl: external_exports.string().optional()
23726
+ purl: external_exports.string().optional(),
23727
+ // SOUP enrichment fields (IEC 62304 §8.1.2)
23728
+ soupCategory: external_exports.enum(["package", "vendor", "runtime"]).optional(),
23729
+ dataSource: external_exports.enum(["sync", "sbom_api", "manual"]).optional(),
23730
+ soupSafetyClass: external_exports.enum(["A", "B", "C"]).optional(),
23731
+ functionalRequirements: external_exports.string().optional(),
23732
+ hardwareRequirements: external_exports.string().optional(),
23733
+ anomalyAssessment: external_exports.enum(["not_assessed", "assessed_acceptable", "assessed_mitigated", "monitoring"]).optional(),
23734
+ anomalyNotes: external_exports.string().optional(),
23735
+ lastReviewedAt: external_exports.string().optional()
23792
23736
  });
23793
23737
  var GetComponentsResponseSchema = external_exports.array(ComponentResponseSchema);
23794
23738
  var DocumentSignoffObligationSchema = external_exports.object({
@@ -24314,6 +24258,38 @@ var RiskListResponseSchema = external_exports.object({
24314
24258
  risks: external_exports.array(RiskListItemSchema),
24315
24259
  total: external_exports.number()
24316
24260
  });
24261
+ var KnownAnomalySeveritySchema = external_exports.enum(["cosmetic", "minor", "major"]);
24262
+ var KnownAnomalyEntrySchema = external_exports.object({
24263
+ title: external_exports.string().min(1).max(200),
24264
+ description: external_exports.string().min(1).max(2e3),
24265
+ severity: KnownAnomalySeveritySchema,
24266
+ acceptanceRationale: external_exports.string().min(1).max(2e3),
24267
+ createdBy: external_exports.string().min(1),
24268
+ createdAt: external_exports.string().datetime()
24269
+ });
24270
+ var ReviewFindingTypeSchema = external_exports.enum(["finding", "action", "observation"]);
24271
+ var ReviewFindingEntrySchema = external_exports.object({
24272
+ type: ReviewFindingTypeSchema,
24273
+ description: external_exports.string().min(1).max(2e3),
24274
+ assignee: external_exports.string().max(200).optional(),
24275
+ dueDate: external_exports.string().datetime().optional(),
24276
+ resolvedAt: external_exports.string().datetime().optional(),
24277
+ createdBy: external_exports.string().min(1),
24278
+ createdAt: external_exports.string().datetime()
24279
+ });
24280
+ var DispositionDirectionSchema = external_exports.enum(["upstream", "downstream"]);
24281
+ var DispositionOutcomeSchema = external_exports.enum(["included_in_release", "not_impacted"]);
24282
+ var SuspectedLinkDispositionEntrySchema = external_exports.object({
24283
+ triggeredByDocumentId: external_exports.string().min(1),
24284
+ neighborDocumentId: external_exports.string().min(1),
24285
+ direction: DispositionDirectionSchema,
24286
+ disposition: DispositionOutcomeSchema,
24287
+ rationale: external_exports.string().max(2e3).optional(),
24288
+ confirmedBy: external_exports.string().min(1),
24289
+ confirmedAt: external_exports.string().datetime()
24290
+ });
24291
+ var CustomerChangeSummarySchema = external_exports.string().max(5e3).optional();
24292
+ var CustomerKnownIssuesSchema = external_exports.string().max(5e3).optional();
24317
24293
  var ReleaseTypeSchema = external_exports.enum(["qms", "device"]);
24318
24294
  var ReleaseStatusSchema = external_exports.enum(["draft", "in_review", "approved", "published"]);
24319
24295
  var SignatureTypeSchema = external_exports.enum([
@@ -24380,9 +24356,6 @@ var CreateReleaseRequestSchema = external_exports.object({
24380
24356
  description: external_exports.string().max(2e3).optional(),
24381
24357
  type: ReleaseTypeSchema,
24382
24358
  deviceId: external_exports.string().optional(),
24383
- releasePlanDocumentId: external_exports.string().min(1).optional(),
24384
- designReviewId: external_exports.string().min(1).optional(),
24385
- releaseNotesDocumentId: external_exports.string().min(1).optional(),
24386
24359
  deviationNotes: external_exports.string().max(5e3).optional(),
24387
24360
  dhr: DHRMetadataSchema.optional(),
24388
24361
  reason: external_exports.string().max(500).optional()
@@ -24391,13 +24364,15 @@ var UpdateReleaseRequestSchema = external_exports.object({
24391
24364
  organizationId: external_exports.string().min(1),
24392
24365
  name: external_exports.string().min(1).max(200).optional(),
24393
24366
  description: external_exports.string().max(2e3).optional(),
24394
- releasePlanDocumentId: external_exports.string().min(1).nullable().optional(),
24395
- designReviewId: external_exports.string().min(1).nullable().optional(),
24396
- releaseNotesDocumentId: external_exports.string().min(1).nullable().optional(),
24397
24367
  deviationNotes: external_exports.string().max(5e3).optional(),
24398
24368
  dhr: DHRMetadataSchema.nullable().optional(),
24399
24369
  deploymentReferences: external_exports.array(DeploymentReferenceSchema).optional(),
24400
24370
  smokeTestEvidence: external_exports.array(DHRTestEvidenceEntrySchema).optional(),
24371
+ knownAnomalies: external_exports.array(KnownAnomalyEntrySchema).optional(),
24372
+ reviewFindings: external_exports.array(ReviewFindingEntrySchema).optional(),
24373
+ suspectedLinkDispositions: external_exports.array(SuspectedLinkDispositionEntrySchema).optional(),
24374
+ customerChangeSummary: CustomerChangeSummarySchema,
24375
+ customerKnownIssues: CustomerKnownIssuesSchema,
24401
24376
  reason: external_exports.string().max(500).optional()
24402
24377
  }).strict();
24403
24378
  var AddSignatureRequestSchema = external_exports.object({
@@ -24533,7 +24508,11 @@ var ComponentSnapshotEntryResponseSchema = external_exports.object({
24533
24508
  version: external_exports.string(),
24534
24509
  license: external_exports.string().optional(),
24535
24510
  safetyRiskClass: external_exports.string().optional(),
24536
- sourceFormat: external_exports.enum(["markdown_table", "cyclonedx", "spdx"])
24511
+ sourceFormat: external_exports.enum(["markdown_table", "cyclonedx", "spdx"]),
24512
+ // SOUP enrichment fields captured in release snapshots
24513
+ soupCategory: external_exports.enum(["package", "vendor", "runtime"]).optional(),
24514
+ soupSafetyClass: external_exports.enum(["A", "B", "C"]).optional(),
24515
+ anomalyAssessment: external_exports.enum(["not_assessed", "assessed_acceptable", "assessed_mitigated", "monitoring"]).optional()
24537
24516
  });
24538
24517
  var ReleaseSnapshotResponseSchema = external_exports.object({
24539
24518
  traceabilityLinks: external_exports.array(SnapshotLinkSchema),
@@ -24620,9 +24599,6 @@ var ReleaseSummaryResponseSchema = external_exports.object({
24620
24599
  obligationsDerivedAt: external_exports.string().optional(),
24621
24600
  obligationsDerivationVersion: external_exports.number().optional(),
24622
24601
  obligationsInputHash: external_exports.string().optional(),
24623
- releasePlanDocumentId: external_exports.string().optional(),
24624
- designReviewId: external_exports.string().optional(),
24625
- releaseNotesDocumentId: external_exports.string().optional(),
24626
24602
  deviationNotes: external_exports.string().optional(),
24627
24603
  dhr: DHRMetadataResponseSchema.optional(),
24628
24604
  version: external_exports.string().optional()
@@ -24639,7 +24615,12 @@ var ReleaseDetailResponseSchema = ReleaseSummaryResponseSchema.extend({
24639
24615
  deploymentReferences: external_exports.array(DeploymentReferenceResponseSchema).optional(),
24640
24616
  smokeTestEvidence: external_exports.array(external_exports.object({ label: external_exports.string(), url: external_exports.string() })).optional(),
24641
24617
  gateOverrides: external_exports.array(GateOverrideResponseSchema).default([]),
24642
- documentManifest: external_exports.array(ReleaseDocumentManifestEntrySchema).optional()
24618
+ documentManifest: external_exports.array(ReleaseDocumentManifestEntrySchema).optional(),
24619
+ knownAnomalies: external_exports.array(KnownAnomalyEntrySchema).optional(),
24620
+ reviewFindings: external_exports.array(ReviewFindingEntrySchema).optional(),
24621
+ suspectedLinkDispositions: external_exports.array(SuspectedLinkDispositionEntrySchema).optional(),
24622
+ customerChangeSummary: external_exports.string().optional(),
24623
+ customerKnownIssues: external_exports.string().optional()
24643
24624
  });
24644
24625
  var ListReleasesResponseSchema = external_exports.object({
24645
24626
  releases: external_exports.array(ReleaseSummaryResponseSchema),
@@ -24779,10 +24760,6 @@ var SignatureCaptureContextSchema = external_exports.discriminatedUnion("type",
24779
24760
  type: external_exports.literal("release"),
24780
24761
  id: external_exports.string().min(1)
24781
24762
  }),
24782
- external_exports.object({
24783
- type: external_exports.literal("design_review"),
24784
- id: external_exports.string().min(1)
24785
- }),
24786
24763
  external_exports.object({
24787
24764
  type: external_exports.literal("dco"),
24788
24765
  id: external_exports.string().min(1)
@@ -25696,10 +25673,6 @@ var SCHEMA_MAP = {
25696
25673
  // Test documents
25697
25674
  test_protocol: TestProtocolFrontmatterSchema,
25698
25675
  test_report: TestReportFrontmatterSchema,
25699
- // Change management (ISO 13485 §7.3.5)
25700
- release_plan: ReleasePlanFrontmatterSchema,
25701
- design_review: DesignReviewFrontmatterSchema,
25702
- release_notes: ReleaseNotesFrontmatterSchema,
25703
25676
  // Internal audit management (ISO 13485 §8.2.2)
25704
25677
  audit_schedule: AuditScheduleFrontmatterSchema,
25705
25678
  audit_report: AuditReportFrontmatterSchema,
@@ -25953,7 +25926,7 @@ var client = new PactoSignaApiClient({
25953
25926
  apiKey: PACTOSIGNA_API_KEY
25954
25927
  });
25955
25928
  var server = new Server(
25956
- { name: "pactosigna", version: "0.1.23" },
25929
+ { name: "pactosigna", version: "0.1.25" },
25957
25930
  { capabilities: { tools: {} } }
25958
25931
  );
25959
25932
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pactosigna/mcp-server",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "type": "module",
5
5
  "description": "MCP server for PactoSigna QMS — connects Claude Desktop, Cursor, and other AI tools to your quality management system",
6
6
  "bin": {