Qdrant · Capability

Qdrant API — Search

Qdrant API — Search. 13 operations. Lead operation: Discover points. Self-contained Naftiko capability covering one Qdrant business surface.

Run with Naftiko QdrantSearch

What You Can Do

POST
Discoverpoints — Discover points
/v1/collections/{collection-name}/points/discover
POST
Discoverbatchpoints — Discover batch points
/v1/collections/{collection-name}/points/discover/batch
POST
Querypoints — Query points
/v1/collections/{collection-name}/points/query
POST
Querybatchpoints — Query points in batch
/v1/collections/{collection-name}/points/query/batch
POST
Querypointsgroups — Query points, grouped by a given payload field
/v1/collections/{collection-name}/points/query/groups
POST
Recommendpoints — Recommend points
/v1/collections/{collection-name}/points/recommend
POST
Recommendbatchpoints — Recommend batch points
/v1/collections/{collection-name}/points/recommend/batch
POST
Recommendpointgroups — Recommend point groups
/v1/collections/{collection-name}/points/recommend/groups
POST
Searchpoints — Search points
/v1/collections/{collection-name}/points/search
POST
Searchbatchpoints — Search batch points
/v1/collections/{collection-name}/points/search/batch
POST
Searchpointgroups — Search point groups
/v1/collections/{collection-name}/points/search/groups
POST
Searchmatrixoffsets — Search points matrix distance offsets
/v1/collections/{collection-name}/points/search/matrix/offsets
POST
Searchmatrixpairs — Search points matrix distance pairs
/v1/collections/{collection-name}/points/search/matrix/pairs

MCP Tools

discover-points

Discover points

discover-batch-points

Discover batch points

query-points

Query points

read-only
query-points-batch

Query points in batch

read-only
query-points-grouped-given-payload

Query points, grouped by a given payload field

read-only
recommend-points

Recommend points

recommend-batch-points

Recommend batch points

recommend-point-groups

Recommend point groups

search-points

Search points

read-only
search-batch-points

Search batch points

read-only
search-point-groups

Search point groups

read-only
search-points-matrix-distance-offsets

Search points matrix distance offsets

read-only
search-points-matrix-distance-pairs

Search points matrix distance pairs

read-only

Capability Spec

qdrant-search.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Qdrant API — Search
  description: 'Qdrant API — Search. 13 operations. Lead operation: Discover points. Self-contained Naftiko capability covering
    one Qdrant business surface.'
  tags:
  - Qdrant
  - Search
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    QDRANT_API_KEY: QDRANT_API_KEY
capability:
  consumes:
  - type: http
    namespace: qdrant-search
    baseUri: ''
    description: Qdrant API — Search business capability. Self-contained, no shared references.
    resources:
    - name: collections-collection_name-points-discover
      path: /collections/{collection_name}/points/discover
      operations:
      - name: discoverpoints
        method: POST
        description: Discover points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-discover-batch
      path: /collections/{collection_name}/points/discover/batch
      operations:
      - name: discoverbatchpoints
        method: POST
        description: Discover batch points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-query
      path: /collections/{collection_name}/points/query
      operations:
      - name: querypoints
        method: POST
        description: Query points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to query
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-query-batch
      path: /collections/{collection_name}/points/query/batch
      operations:
      - name: querybatchpoints
        method: POST
        description: Query points in batch
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to query
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-query-groups
      path: /collections/{collection_name}/points/query/groups
      operations:
      - name: querypointsgroups
        method: POST
        description: Query points, grouped by a given payload field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to query
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-recommend
      path: /collections/{collection_name}/points/recommend
      operations:
      - name: recommendpoints
        method: POST
        description: Recommend points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-recommend-batch
      path: /collections/{collection_name}/points/recommend/batch
      operations:
      - name: recommendbatchpoints
        method: POST
        description: Recommend batch points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-recommend-groups
      path: /collections/{collection_name}/points/recommend/groups
      operations:
      - name: recommendpointgroups
        method: POST
        description: Recommend point groups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-search
      path: /collections/{collection_name}/points/search
      operations:
      - name: searchpoints
        method: POST
        description: Search points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-search-batch
      path: /collections/{collection_name}/points/search/batch
      operations:
      - name: searchbatchpoints
        method: POST
        description: Search batch points
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-search-groups
      path: /collections/{collection_name}/points/search/groups
      operations:
      - name: searchpointgroups
        method: POST
        description: Search point groups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-search-matrix-offsets
      path: /collections/{collection_name}/points/search/matrix/offsets
      operations:
      - name: searchmatrixoffsets
        method: POST
        description: Search points matrix distance offsets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: collections-collection_name-points-search-matrix-pairs
      path: /collections/{collection_name}/points/search/matrix/pairs
      operations:
      - name: searchmatrixpairs
        method: POST
        description: Search points matrix distance pairs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: collection_name
          in: path
          type: string
          description: Name of the collection to search in
          required: true
        - name: consistency
          in: query
          type: string
          description: Define read consistency guarantees for the operation
        - name: timeout
          in: query
          type: integer
          description: If set, overrides global timeout for this request. Unit is seconds.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      token: '{{env.QDRANT_API_KEY}}'
  exposes:
  - type: rest
    namespace: qdrant-search-rest
    port: 8080
    description: REST adapter for Qdrant API — Search. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/collections/{collection-name}/points/discover
      name: collections-collection-name-points-discover
      description: REST surface for collections-collection_name-points-discover.
      operations:
      - method: POST
        name: discoverpoints
        description: Discover points
        call: qdrant-search.discoverpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/discover/batch
      name: collections-collection-name-points-discover-batch
      description: REST surface for collections-collection_name-points-discover-batch.
      operations:
      - method: POST
        name: discoverbatchpoints
        description: Discover batch points
        call: qdrant-search.discoverbatchpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/query
      name: collections-collection-name-points-query
      description: REST surface for collections-collection_name-points-query.
      operations:
      - method: POST
        name: querypoints
        description: Query points
        call: qdrant-search.querypoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/query/batch
      name: collections-collection-name-points-query-batch
      description: REST surface for collections-collection_name-points-query-batch.
      operations:
      - method: POST
        name: querybatchpoints
        description: Query points in batch
        call: qdrant-search.querybatchpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/query/groups
      name: collections-collection-name-points-query-groups
      description: REST surface for collections-collection_name-points-query-groups.
      operations:
      - method: POST
        name: querypointsgroups
        description: Query points, grouped by a given payload field
        call: qdrant-search.querypointsgroups
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/recommend
      name: collections-collection-name-points-recommend
      description: REST surface for collections-collection_name-points-recommend.
      operations:
      - method: POST
        name: recommendpoints
        description: Recommend points
        call: qdrant-search.recommendpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/recommend/batch
      name: collections-collection-name-points-recommend-batch
      description: REST surface for collections-collection_name-points-recommend-batch.
      operations:
      - method: POST
        name: recommendbatchpoints
        description: Recommend batch points
        call: qdrant-search.recommendbatchpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/recommend/groups
      name: collections-collection-name-points-recommend-groups
      description: REST surface for collections-collection_name-points-recommend-groups.
      operations:
      - method: POST
        name: recommendpointgroups
        description: Recommend point groups
        call: qdrant-search.recommendpointgroups
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/search
      name: collections-collection-name-points-search
      description: REST surface for collections-collection_name-points-search.
      operations:
      - method: POST
        name: searchpoints
        description: Search points
        call: qdrant-search.searchpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/search/batch
      name: collections-collection-name-points-search-batch
      description: REST surface for collections-collection_name-points-search-batch.
      operations:
      - method: POST
        name: searchbatchpoints
        description: Search batch points
        call: qdrant-search.searchbatchpoints
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/search/groups
      name: collections-collection-name-points-search-groups
      description: REST surface for collections-collection_name-points-search-groups.
      operations:
      - method: POST
        name: searchpointgroups
        description: Search point groups
        call: qdrant-search.searchpointgroups
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/search/matrix/offsets
      name: collections-collection-name-points-search-matrix-offsets
      description: REST surface for collections-collection_name-points-search-matrix-offsets.
      operations:
      - method: POST
        name: searchmatrixoffsets
        description: Search points matrix distance offsets
        call: qdrant-search.searchmatrixoffsets
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/collections/{collection-name}/points/search/matrix/pairs
      name: collections-collection-name-points-search-matrix-pairs
      description: REST surface for collections-collection_name-points-search-matrix-pairs.
      operations:
      - method: POST
        name: searchmatrixpairs
        description: Search points matrix distance pairs
        call: qdrant-search.searchmatrixpairs
        with:
          collection_name: rest.collection_name
          consistency: rest.consistency
          timeout: rest.timeout
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: qdrant-search-mcp
    port: 9090
    transport: http
    description: MCP adapter for Qdrant API — Search. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: discover-points
      description: Discover points
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: qdrant-search.discoverpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: discover-batch-points
      description: Discover batch points
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: qdrant-search.discoverbatchpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: query-points
      description: Query points
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.querypoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: query-points-batch
      description: Query points in batch
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.querybatchpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: query-points-grouped-given-payload
      description: Query points, grouped by a given payload field
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.querypointsgroups
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: recommend-points
      description: Recommend points
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: qdrant-search.recommendpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: recommend-batch-points
      description: Recommend batch points
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: qdrant-search.recommendbatchpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: recommend-point-groups
      description: Recommend point groups
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: qdrant-search.recommendpointgroups
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: search-points
      description: Search points
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.searchpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: search-batch-points
      description: Search batch points
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.searchbatchpoints
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: search-point-groups
      description: Search point groups
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.searchpointgroups
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: search-points-matrix-distance-offsets
      description: Search points matrix distance offsets
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.searchmatrixoffsets
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: search-points-matrix-distance-pairs
      description: Search points matrix distance pairs
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: qdrant-search.searchmatrixpairs
      with:
        collection_name: tools.collection_name
        consistency: tools.consistency
        timeout: tools.timeout
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.