@pactosigna/mcp-server 0.1.11 → 0.1.12

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 -17
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -21840,8 +21840,9 @@ var LINK_TYPES = {
21840
21840
  analyzes: "Analyzes"
21841
21841
  };
21842
21842
  var REQUIRED_SECTIONS = {
21843
- user_need: ["Purpose", "Stakeholder", "User Needs"],
21844
- architecture: ["Purpose"],
21843
+ user_need: ["User Story", "Validation Criteria"],
21844
+ architecture: ["Purpose", "Architecture Overview", "Interfaces"],
21845
+ detailed_design: ["Purpose", "Detailed Design", "Interfaces"],
21845
21846
  release_plan: ["Scope", "Applicable Plans", "Release-Specific Criteria", "Known Anomalies"],
21846
21847
  design_review: ["Review Scope", "Attendees", "Findings", "Actions", "Conclusion"],
21847
21848
  release_notes: ["Changes", "Known Issues"],
@@ -22826,28 +22827,38 @@ var SegregationSchema = external_exports.object({
22826
22827
  var ArchitectureFrontmatterSchema = external_exports.object({
22827
22828
  id: external_exports.string().min(1),
22828
22829
  title: external_exports.string().min(1),
22830
+ /** Required — cannot be inferred from folder alone since architecture/ and design/ share parent */
22829
22831
  type: external_exports.literal("architecture"),
22830
22832
  status: RiskDocumentStatusSchema,
22831
- software_item_type: SoftwareItemTypeSchema.optional(),
22833
+ /** IEC 62304 §5.3 — C4/IEC mapping: system, subsystem, component, unit (required) */
22834
+ software_item_type: SoftwareItemTypeSchema,
22835
+ /** Parent HLD doc ID (optional for system-level, recommended for subsystem/component) */
22832
22836
  parent_item: external_exports.string().optional(),
22833
- safety_class: external_exports.enum(["A", "B", "C"]).optional(),
22837
+ safety_class: SafetyClassSchema.optional(),
22834
22838
  segregation: SegregationSchema.optional(),
22835
- author: external_exports.string().optional(),
22839
+ /** Document author — required for all regulated document types */
22840
+ author: external_exports.string().min(1),
22836
22841
  reviewers: external_exports.array(external_exports.string()).optional(),
22837
- approvers: external_exports.array(external_exports.string()).optional()
22842
+ /** Approver list — required for all regulated document types */
22843
+ approvers: external_exports.array(external_exports.string()).min(1)
22838
22844
  });
22839
22845
  var DetailedDesignFrontmatterSchema = external_exports.object({
22840
22846
  id: external_exports.string().min(1),
22841
22847
  title: external_exports.string().min(1),
22848
+ /** Required — cannot be inferred from folder alone since architecture/ and design/ share parent */
22842
22849
  type: external_exports.literal("detailed_design"),
22843
22850
  status: RiskDocumentStatusSchema,
22844
- software_item_type: SoftwareItemTypeSchema.optional(),
22845
- parent_item: external_exports.string().optional(),
22846
- safety_class: external_exports.enum(["A", "B", "C"]).optional(),
22851
+ /** IEC 62304 §5.4 — typically component or unit (required) */
22852
+ software_item_type: SoftwareItemTypeSchema,
22853
+ /** Parent HLD doc ID — required for SDD (must reference parent architecture) */
22854
+ parent_item: external_exports.string().min(1),
22855
+ safety_class: SafetyClassSchema.optional(),
22847
22856
  segregation: SegregationSchema.optional(),
22848
- author: external_exports.string().optional(),
22857
+ /** Document author — required for all regulated document types */
22858
+ author: external_exports.string().min(1),
22849
22859
  reviewers: external_exports.array(external_exports.string()).optional(),
22850
- approvers: external_exports.array(external_exports.string()).optional()
22860
+ /** Approver list — required for all regulated document types */
22861
+ approvers: external_exports.array(external_exports.string()).min(1)
22851
22862
  });
22852
22863
  var AnomalyCategorySchema = external_exports.enum([
22853
22864
  "bug",
@@ -22976,17 +22987,21 @@ var UserNeedFrontmatterSchema = external_exports.object({
22976
22987
  status: RiskDocumentStatusSchema,
22977
22988
  /** Validated if present — ensures frontmatter doesn't misidentify the document type */
22978
22989
  type: external_exports.literal("user_need").optional(),
22979
- /** The user role or stakeholder (e.g., "Quality Manager", "Developer") */
22980
- stakeholder: external_exports.string().optional(),
22990
+ /** The user role or stakeholder (e.g., "Quality Manager", "Developer") — required per ISO 13485 §7.3.2 */
22991
+ stakeholder: external_exports.string().min(1),
22981
22992
  /** MoSCoW priority classification */
22982
22993
  priority: UserNeedPrioritySchema.optional(),
22983
22994
  /** Where this need originated (e.g., "ISO 13485 §7.3", "user interview") */
22984
22995
  source: external_exports.string().optional(),
22985
22996
  /** IDs of product requirements derived from this need */
22986
22997
  derives: external_exports.array(external_exports.string()).optional(),
22987
- author: external_exports.string().optional(),
22998
+ /** Document author — required for all regulated document types */
22999
+ author: external_exports.string().min(1),
22988
23000
  reviewers: external_exports.array(external_exports.string()).optional(),
22989
- approvers: external_exports.array(external_exports.string()).optional()
23001
+ /** Approver list — required for all regulated document types */
23002
+ approvers: external_exports.array(external_exports.string()).min(1),
23003
+ /** Optional reference to a Use Specification persona (US-xxx) per IEC 62366 */
23004
+ use_specification: external_exports.string().optional()
22990
23005
  });
22991
23006
  var RequirementTypeSchema = external_exports.enum([
22992
23007
  "functional",
@@ -23024,6 +23039,46 @@ var RequirementFrontmatterSchema = external_exports.object({
23024
23039
  /** Downstream traceability — IDs of documents this requirement traces to (e.g., SRS for PRS) */
23025
23040
  traces_to: external_exports.array(external_exports.string()).optional()
23026
23041
  });
23042
+ var ProductRequirementFrontmatterSchema = external_exports.object({
23043
+ id: external_exports.string().min(1),
23044
+ title: external_exports.string().min(1),
23045
+ status: RiskDocumentStatusSchema,
23046
+ /** IEC 62304 §5.2.2 — requirement classification (optional for PRS) */
23047
+ req_type: RequirementTypeSchema.optional(),
23048
+ /** Authoring convention — controls which required sections are checked */
23049
+ format: RequirementFormatSchema.optional(),
23050
+ /** ISO 13485 §7.3.3 — how this PRS design input is fulfilled (defaults to 'software') */
23051
+ fulfillment_type: RequirementFulfillmentTypeSchema.optional(),
23052
+ /** Document author — required for all regulated document types */
23053
+ author: external_exports.string().min(1),
23054
+ reviewers: external_exports.array(external_exports.string()).optional(),
23055
+ /** Approver list — required for all regulated document types */
23056
+ approvers: external_exports.array(external_exports.string()).min(1),
23057
+ /** Upstream traceability — IDs of User Need documents this PRS traces from (required) */
23058
+ traces_from: external_exports.array(external_exports.string()).min(1),
23059
+ /** Downstream traceability — IDs of SRS documents this PRS traces to */
23060
+ traces_to: external_exports.array(external_exports.string()).optional()
23061
+ });
23062
+ var SoftwareRequirementFrontmatterSchema = external_exports.object({
23063
+ id: external_exports.string().min(1),
23064
+ title: external_exports.string().min(1),
23065
+ status: RiskDocumentStatusSchema,
23066
+ /** IEC 62304 §5.2.2 — requirement classification (recommended for SRS) */
23067
+ req_type: RequirementTypeSchema.optional(),
23068
+ /** Authoring convention — controls which required sections are checked */
23069
+ format: RequirementFormatSchema.optional(),
23070
+ /** Document author — required for all regulated document types */
23071
+ author: external_exports.string().min(1),
23072
+ reviewers: external_exports.array(external_exports.string()).optional(),
23073
+ /** Approver list — required for all regulated document types */
23074
+ approvers: external_exports.array(external_exports.string()).min(1),
23075
+ /** Upstream traceability — IDs of PRS documents this SRS traces from (required) */
23076
+ traces_from: external_exports.array(external_exports.string()).min(1),
23077
+ /** Downstream traceability — IDs of documents this SRS traces to */
23078
+ traces_to: external_exports.array(external_exports.string()).optional(),
23079
+ /** HLD/SDD document ID that implements this requirement */
23080
+ implemented_in: external_exports.string().optional()
23081
+ });
23027
23082
  var TestProtocolFrontmatterSchema = external_exports.object({
23028
23083
  type: external_exports.literal("test_protocol"),
23029
23084
  id: external_exports.string().min(1),
@@ -23294,7 +23349,8 @@ var EvidenceRuleConditionsSeedSchema = external_exports.object({
23294
23349
  documentType: DocumentTypeSchema.optional(),
23295
23350
  linkType: LinkTypeSchema.optional(),
23296
23351
  status: external_exports.string().optional(),
23297
- minCount: external_exports.number().int().positive().optional()
23352
+ minCount: external_exports.number().int().positive().optional(),
23353
+ safetyClass: SafetyClassSchema.optional()
23298
23354
  });
23299
23355
  var EvidenceRuleSeedSchema = external_exports.object({
23300
23356
  clauseId: external_exports.string().min(1),
@@ -25572,6 +25628,9 @@ var SCHEMA_MAP = {
25572
25628
  // Product (ISO 13485 §7.3)
25573
25629
  product_development_plan: ProductDevelopmentPlanFrontmatterSchema,
25574
25630
  intended_use: IntendedUseFrontmatterSchema,
25631
+ // Architecture (IEC 62304 §5.3)
25632
+ architecture: ArchitectureFrontmatterSchema,
25633
+ detailed_design: DetailedDesignFrontmatterSchema,
25575
25634
  // User needs (ISO 13485 §7.3.2)
25576
25635
  user_need: UserNeedFrontmatterSchema,
25577
25636
  // Requirements (IEC 62304 §5.2.2, ISO 13485 §7.3.3)
@@ -25836,7 +25895,7 @@ var client = new PactoSignaApiClient({
25836
25895
  apiKey: PACTOSIGNA_API_KEY
25837
25896
  });
25838
25897
  var server = new Server(
25839
- { name: "pactosigna", version: "0.1.11" },
25898
+ { name: "pactosigna", version: "0.1.12" },
25840
25899
  { capabilities: { tools: {} } }
25841
25900
  );
25842
25901
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pactosigna/mcp-server",
3
- "version": "0.1.11",
3
+ "version": "0.1.12",
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": {