naftiko: 1.0.0-alpha2 info: label: 1Factory API — Part Master description: '1Factory API — Part Master. 3 operations. Lead operation: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.. Self-contained Naftiko capability covering one 1factory business surface.' tags: - 1factory - Part Master created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: 1FACTORY_API_KEY: 1FACTORY_API_KEY capability: consumes: - type: http namespace: 1factory-part-master baseUri: https://www.1factory.co/api/v1 description: 1Factory API — Part Master business capability. Self-contained, no shared references. resources: - name: partMasters path: /partMasters operations: - name: put method: PUT description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: get method: GET description: 1Factory Gets a List of Part Masters for Your Organization. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: parent_part_number in: query type: string description: Parent Part number to filter on for Table of Size entries. - name: parent_rev in: query type: string description: Parent Part rev to filter on for Table of Size entries. - name: is_library in: query type: boolean description: If the part is a configured as a library. - name: is_assembly in: query type: boolean description: If the part is a configured as an assembly. - name: is_itar in: query type: boolean description: If the part is a configured as an ITAR part. - name: has_ppap in: query type: boolean description: If the part has any PPAP documents. - name: type in: query type: string description: If the part has any PPAP documents. - name: partMasters-assemblies path: /partMasters/assemblies operations: - name: put method: PUT description: 1Factory Defines Assembly Relationships Between Part Masters. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: apikey key: x-1factory-org value: '{{env.1FACTORY_API_KEY}}' placement: header exposes: - type: rest namespace: 1factory-part-master-rest port: 8080 description: REST adapter for 1Factory API — Part Master. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/partmasters name: partmasters description: REST surface for partMasters. operations: - method: PUT name: put description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization. call: 1factory-part-master.put with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: get description: 1Factory Gets a List of Part Masters for Your Organization. call: 1factory-part-master.get with: parent_part_number: rest.parent_part_number parent_rev: rest.parent_rev is_library: rest.is_library is_assembly: rest.is_assembly is_itar: rest.is_itar has_ppap: rest.has_ppap type: rest.type outputParameters: - type: object mapping: $. - path: /v1/partmasters/assemblies name: partmasters-assemblies description: REST surface for partMasters-assemblies. operations: - method: PUT name: put description: 1Factory Defines Assembly Relationships Between Part Masters. call: 1factory-part-master.put with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: 1factory-part-master-mcp port: 9090 transport: http description: MCP adapter for 1Factory API — Part Master. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: 1factory-creates-new-updates-existing description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization. hints: readOnly: false destructive: false idempotent: true call: 1factory-part-master.put with: body: tools.body outputParameters: - type: object mapping: $. - name: 1factory-gets-list-part-masters description: 1Factory Gets a List of Part Masters for Your Organization. hints: readOnly: true destructive: false idempotent: true call: 1factory-part-master.get with: parent_part_number: tools.parent_part_number parent_rev: tools.parent_rev is_library: tools.is_library is_assembly: tools.is_assembly is_itar: tools.is_itar has_ppap: tools.has_ppap type: tools.type outputParameters: - type: object mapping: $. - name: 1factory-defines-assembly-relationships-between description: 1Factory Defines Assembly Relationships Between Part Masters. hints: readOnly: false destructive: false idempotent: true call: 1factory-part-master.put with: body: tools.body outputParameters: - type: object mapping: $.