naftiko: 1.0.0-alpha2 info: label: Commerce Layer Provisioning API — Memberships and Roles description: 'Provisioning memberships, roles, permissions, application memberships, and user invitations.' tags: - Commerce Layer created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: COMMERCE_LAYER_PROVISIONING_ACCESS_TOKEN: COMMERCE_LAYER_PROVISIONING_ACCESS_TOKEN capability: consumes: - type: http namespace: provisioning-memberships baseUri: https://provisioning.commercelayer.io description: Commerce Layer Provisioning API — Memberships and Roles business surface. resources: - name: memberships path: /memberships operations: - name: listmemberships method: GET description: List All Memberships outputRawFormat: json outputParameters: - name: result type: object value: $. - name: creatememberships method: POST description: Create A Membership outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: roles path: /roles operations: - name: listroles method: GET description: List All Roles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createrole method: POST description: Create A Role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: permissions path: /permissions operations: - name: listpermissions method: GET description: List All Permissions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createpermission method: POST description: Create A Permission outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: application_memberships path: /application_memberships operations: - name: listapplicationmemberships method: GET description: List All Application Memberships outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createapplicationmembership method: POST description: Create An Application Membership outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: user_invitations path: /user_invitations operations: - name: listuserinvitations method: GET description: List All User Invitations outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createuserinvitation method: POST description: Create A User Invitation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true authentication: type: oauth2 flow: client_credentials tokenUrl: https://auth.commercelayer.io/oauth/token value: 'Bearer {{env.COMMERCE_LAYER_PROVISIONING_ACCESS_TOKEN}}' placement: header key: Authorization exposes: - type: rest namespace: provisioning-memberships-rest port: 8080 description: REST adapter for Commerce Layer Provisioning API — Memberships and Roles. resources: - path: /api/memberships name: memberships operations: - method: GET name: listmemberships call: provisioning-memberships.listmemberships outputParameters: - type: object mapping: $. - method: POST name: creatememberships call: provisioning-memberships.creatememberships with: body: rest.body outputParameters: - type: object mapping: $. - path: /api/roles name: roles operations: - method: GET name: listroles call: provisioning-memberships.listroles outputParameters: - type: object mapping: $. - method: POST name: createrole call: provisioning-memberships.createrole with: body: rest.body outputParameters: - type: object mapping: $. - path: /api/permissions name: permissions operations: - method: GET name: listpermissions call: provisioning-memberships.listpermissions outputParameters: - type: object mapping: $. - method: POST name: createpermission call: provisioning-memberships.createpermission with: body: rest.body outputParameters: - type: object mapping: $. - path: /api/application_memberships name: application-memberships operations: - method: GET name: listapplicationmemberships call: provisioning-memberships.listapplicationmemberships outputParameters: - type: object mapping: $. - method: POST name: createapplicationmembership call: provisioning-memberships.createapplicationmembership with: body: rest.body outputParameters: - type: object mapping: $. - path: /api/user_invitations name: user-invitations operations: - method: GET name: listuserinvitations call: provisioning-memberships.listuserinvitations outputParameters: - type: object mapping: $. - method: POST name: createuserinvitation call: provisioning-memberships.createuserinvitation with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: provisioning-memberships-mcp port: 9090 transport: http description: MCP adapter for Commerce Layer Provisioning API — Memberships and Roles. tools: - name: commerce-layer-listmemberships description: List All Memberships hints: readOnly: true idempotent: true destructive: false call: provisioning-memberships.listmemberships outputParameters: - type: object mapping: $. - name: commerce-layer-creatememberships description: Create A Membership hints: readOnly: false idempotent: false destructive: false call: provisioning-memberships.creatememberships with: body: tools.body outputParameters: - type: object mapping: $. - name: commerce-layer-listroles description: List All Roles hints: readOnly: true idempotent: true destructive: false call: provisioning-memberships.listroles outputParameters: - type: object mapping: $. - name: commerce-layer-createrole description: Create A Role hints: readOnly: false idempotent: false destructive: false call: provisioning-memberships.createrole with: body: tools.body outputParameters: - type: object mapping: $. - name: commerce-layer-listpermissions description: List All Permissions hints: readOnly: true idempotent: true destructive: false call: provisioning-memberships.listpermissions outputParameters: - type: object mapping: $. - name: commerce-layer-createpermission description: Create A Permission hints: readOnly: false idempotent: false destructive: false call: provisioning-memberships.createpermission with: body: tools.body outputParameters: - type: object mapping: $. - name: commerce-layer-listapplicationmemberships description: List All Application Memberships hints: readOnly: true idempotent: true destructive: false call: provisioning-memberships.listapplicationmemberships outputParameters: - type: object mapping: $. - name: commerce-layer-createapplicationmembership description: Create An Application Membership hints: readOnly: false idempotent: false destructive: false call: provisioning-memberships.createapplicationmembership with: body: tools.body outputParameters: - type: object mapping: $. - name: commerce-layer-listuserinvitations description: List All User Invitations hints: readOnly: true idempotent: true destructive: false call: provisioning-memberships.listuserinvitations outputParameters: - type: object mapping: $. - name: commerce-layer-createuserinvitation description: Create A User Invitation hints: readOnly: false idempotent: false destructive: false call: provisioning-memberships.createuserinvitation with: body: tools.body outputParameters: - type: object mapping: $.