Acceptance Criteria · Capability

Acceptance Criteria Management API — Acceptance Criteria

Acceptance Criteria Management API — Acceptance Criteria. 4 operations. Lead operation: List acceptance criteria for a story. Self-contained Naftiko capability covering one Acceptance Criteria business surface.

Run with Naftiko Acceptance Criteria

What You Can Do

GET
Listacceptancecriteria — List acceptance criteria for a story
/v1/stories/{storyid}/acceptance-criteria
POST
Addacceptancecriterion — Add acceptance criterion
/v1/stories/{storyid}/acceptance-criteria
PUT
Updateacceptancecriterion — Update an acceptance criterion
/v1/stories/{storyid}/acceptance-criteria/{criterionid}
DELETE
Deleteacceptancecriterion — Delete an acceptance criterion
/v1/stories/{storyid}/acceptance-criteria/{criterionid}

MCP Tools

list-acceptance-criteria-story

List acceptance criteria for a story

read-only idempotent
add-acceptance-criterion

Add acceptance criterion

update-acceptance-criterion

Update an acceptance criterion

idempotent
delete-acceptance-criterion

Delete an acceptance criterion

idempotent

Capability Spec

management-acceptance-criteria.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Acceptance Criteria Management API — Acceptance Criteria
  description: 'Acceptance Criteria Management API — Acceptance Criteria. 4 operations. Lead operation: List acceptance criteria
    for a story. Self-contained Naftiko capability covering one Acceptance Criteria business surface.'
  tags:
  - Acceptance Criteria
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ACCEPTANCE_CRITERIA_API_KEY: ACCEPTANCE_CRITERIA_API_KEY
capability:
  consumes:
  - type: http
    namespace: management-acceptance-criteria
    baseUri: https://api.example.com/v1
    description: Acceptance Criteria Management API — Acceptance Criteria business capability. Self-contained, no shared references.
    resources:
    - name: stories-storyId-acceptance-criteria
      path: /stories/{storyId}/acceptance-criteria
      operations:
      - name: listacceptancecriteria
        method: GET
        description: List acceptance criteria for a story
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storyId
          in: path
          type: string
          required: true
      - name: addacceptancecriterion
        method: POST
        description: Add acceptance criterion
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storyId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: stories-storyId-acceptance-criteria-criterionId
      path: /stories/{storyId}/acceptance-criteria/{criterionId}
      operations:
      - name: updateacceptancecriterion
        method: PUT
        description: Update an acceptance criterion
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storyId
          in: path
          type: string
          required: true
        - name: criterionId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteacceptancecriterion
        method: DELETE
        description: Delete an acceptance criterion
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storyId
          in: path
          type: string
          required: true
        - name: criterionId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.ACCEPTANCE_CRITERIA_API_KEY}}'
  exposes:
  - type: rest
    namespace: management-acceptance-criteria-rest
    port: 8080
    description: REST adapter for Acceptance Criteria Management API — Acceptance Criteria. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/stories/{storyid}/acceptance-criteria
      name: stories-storyid-acceptance-criteria
      description: REST surface for stories-storyId-acceptance-criteria.
      operations:
      - method: GET
        name: listacceptancecriteria
        description: List acceptance criteria for a story
        call: management-acceptance-criteria.listacceptancecriteria
        with:
          storyId: rest.storyId
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: addacceptancecriterion
        description: Add acceptance criterion
        call: management-acceptance-criteria.addacceptancecriterion
        with:
          storyId: rest.storyId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/stories/{storyid}/acceptance-criteria/{criterionid}
      name: stories-storyid-acceptance-criteria-criterionid
      description: REST surface for stories-storyId-acceptance-criteria-criterionId.
      operations:
      - method: PUT
        name: updateacceptancecriterion
        description: Update an acceptance criterion
        call: management-acceptance-criteria.updateacceptancecriterion
        with:
          storyId: rest.storyId
          criterionId: rest.criterionId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteacceptancecriterion
        description: Delete an acceptance criterion
        call: management-acceptance-criteria.deleteacceptancecriterion
        with:
          storyId: rest.storyId
          criterionId: rest.criterionId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: management-acceptance-criteria-mcp
    port: 9090
    transport: http
    description: MCP adapter for Acceptance Criteria Management API — Acceptance Criteria. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: list-acceptance-criteria-story
      description: List acceptance criteria for a story
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: management-acceptance-criteria.listacceptancecriteria
      with:
        storyId: tools.storyId
      outputParameters:
      - type: object
        mapping: $.
    - name: add-acceptance-criterion
      description: Add acceptance criterion
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: management-acceptance-criteria.addacceptancecriterion
      with:
        storyId: tools.storyId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-acceptance-criterion
      description: Update an acceptance criterion
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: management-acceptance-criteria.updateacceptancecriterion
      with:
        storyId: tools.storyId
        criterionId: tools.criterionId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-acceptance-criterion
      description: Delete an acceptance criterion
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: management-acceptance-criteria.deleteacceptancecriterion
      with:
        storyId: tools.storyId
        criterionId: tools.criterionId
      outputParameters:
      - type: object
        mapping: $.