Typesense · Capability

Typesense Search API — Curation Sets

Typesense Search API — Curation Sets. 8 operations. Lead operation: List All Curation Sets. Self-contained Naftiko capability covering one Typesense business surface.

Run with Naftiko TypesenseCuration Sets

What You Can Do

GET
Listcurationsets — List All Curation Sets
/v1/curation-sets
GET
Getcurationset — Retrieve A Curation Set
/v1/curation-sets/{curationsetname}
PUT
Upsertcurationset — Create Or Update A Curation Set
/v1/curation-sets/{curationsetname}
DELETE
Deletecurationset — Delete A Curation Set
/v1/curation-sets/{curationsetname}
GET
Listcurationsetitems — List Items In A Curation Set
/v1/curation-sets/{curationsetname}/items
GET
Getcurationsetitem — Retrieve A Curation Set Item
/v1/curation-sets/{curationsetname}/items/{itemid}
PUT
Upsertcurationsetitem — Create Or Update A Curation Set Item
/v1/curation-sets/{curationsetname}/items/{itemid}
DELETE
Deletecurationsetitem — Delete A Curation Set Item
/v1/curation-sets/{curationsetname}/items/{itemid}

MCP Tools

list-all-curation-sets

List All Curation Sets

read-only idempotent
retrieve-curation-set

Retrieve A Curation Set

read-only idempotent
create-update-curation-set

Create Or Update A Curation Set

idempotent
delete-curation-set

Delete A Curation Set

idempotent
list-items-curation-set

List Items In A Curation Set

read-only idempotent
retrieve-curation-set-item

Retrieve A Curation Set Item

read-only idempotent
create-update-curation-set-item

Create Or Update A Curation Set Item

idempotent
delete-curation-set-item

Delete A Curation Set Item

idempotent

Capability Spec

search-curation-sets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Typesense Search API — Curation Sets
  description: 'Typesense Search API — Curation Sets. 8 operations. Lead operation: List All Curation Sets. Self-contained
    Naftiko capability covering one Typesense business surface.'
  tags:
  - Typesense
  - Curation Sets
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TYPESENSE_API_KEY: TYPESENSE_API_KEY
capability:
  consumes:
  - type: http
    namespace: search-curation-sets
    baseUri: ''
    description: Typesense Search API — Curation Sets business capability. Self-contained, no shared references.
    resources:
    - name: curation_sets
      path: /curation_sets
      operations:
      - name: listcurationsets
        method: GET
        description: List All Curation Sets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: curation_sets-curationSetName
      path: /curation_sets/{curationSetName}
      operations:
      - name: getcurationset
        method: GET
        description: Retrieve A Curation Set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: upsertcurationset
        method: PUT
        description: Create Or Update A Curation Set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletecurationset
        method: DELETE
        description: Delete A Curation Set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: curation_sets-curationSetName-items
      path: /curation_sets/{curationSetName}/items
      operations:
      - name: listcurationsetitems
        method: GET
        description: List Items In A Curation Set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: curation_sets-curationSetName-items-itemId
      path: /curation_sets/{curationSetName}/items/{itemId}
      operations:
      - name: getcurationsetitem
        method: GET
        description: Retrieve A Curation Set Item
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: upsertcurationsetitem
        method: PUT
        description: Create Or Update A Curation Set Item
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletecurationsetitem
        method: DELETE
        description: Delete A Curation Set Item
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: apikey
      key: X-TYPESENSE-API-KEY
      value: '{{env.TYPESENSE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: search-curation-sets-rest
    port: 8080
    description: REST adapter for Typesense Search API — Curation Sets. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/curation-sets
      name: curation-sets
      description: REST surface for curation_sets.
      operations:
      - method: GET
        name: listcurationsets
        description: List All Curation Sets
        call: search-curation-sets.listcurationsets
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/curation-sets/{curationsetname}
      name: curation-sets-curationsetname
      description: REST surface for curation_sets-curationSetName.
      operations:
      - method: GET
        name: getcurationset
        description: Retrieve A Curation Set
        call: search-curation-sets.getcurationset
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: upsertcurationset
        description: Create Or Update A Curation Set
        call: search-curation-sets.upsertcurationset
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecurationset
        description: Delete A Curation Set
        call: search-curation-sets.deletecurationset
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/curation-sets/{curationsetname}/items
      name: curation-sets-curationsetname-items
      description: REST surface for curation_sets-curationSetName-items.
      operations:
      - method: GET
        name: listcurationsetitems
        description: List Items In A Curation Set
        call: search-curation-sets.listcurationsetitems
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/curation-sets/{curationsetname}/items/{itemid}
      name: curation-sets-curationsetname-items-itemid
      description: REST surface for curation_sets-curationSetName-items-itemId.
      operations:
      - method: GET
        name: getcurationsetitem
        description: Retrieve A Curation Set Item
        call: search-curation-sets.getcurationsetitem
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: upsertcurationsetitem
        description: Create Or Update A Curation Set Item
        call: search-curation-sets.upsertcurationsetitem
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecurationsetitem
        description: Delete A Curation Set Item
        call: search-curation-sets.deletecurationsetitem
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: search-curation-sets-mcp
    port: 9090
    transport: http
    description: MCP adapter for Typesense Search API — Curation Sets. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: list-all-curation-sets
      description: List All Curation Sets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: search-curation-sets.listcurationsets
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-curation-set
      description: Retrieve A Curation Set
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: search-curation-sets.getcurationset
      outputParameters:
      - type: object
        mapping: $.
    - name: create-update-curation-set
      description: Create Or Update A Curation Set
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: search-curation-sets.upsertcurationset
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-curation-set
      description: Delete A Curation Set
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: search-curation-sets.deletecurationset
      outputParameters:
      - type: object
        mapping: $.
    - name: list-items-curation-set
      description: List Items In A Curation Set
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: search-curation-sets.listcurationsetitems
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-curation-set-item
      description: Retrieve A Curation Set Item
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: search-curation-sets.getcurationsetitem
      outputParameters:
      - type: object
        mapping: $.
    - name: create-update-curation-set-item
      description: Create Or Update A Curation Set Item
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: search-curation-sets.upsertcurationsetitem
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-curation-set-item
      description: Delete A Curation Set Item
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: search-curation-sets.deletecurationsetitem
      outputParameters:
      - type: object
        mapping: $.