Coveo · Capability

Coveo Source API — Metadata

Coveo Source API — Metadata. 3 operations. Lead operation: Retrieve Metadata Report for a Source. Self-contained Naftiko capability covering one Coveo business surface.

Run with Naftiko CoveoSourceMetadata

What You Can Do

GET
Getsourcemetadatareport — Retrieve Metadata Report for a Source
/v1/organizations/{organizationid}/sources/{sourceid}/metadata
POST
Createmetadatareport — Create Metadata Report for a Source
/v1/organizations/{organizationid}/sources/{sourceid}/metadata
GET
Getsourcemetadatastatus — Get the Status of Metadata Reports for a Source
/v1/organizations/{organizationid}/sources/{sourceid}/metadata/status

MCP Tools

retrieve-metadata-report-source

Retrieve Metadata Report for a Source

read-only idempotent
create-metadata-report-source

Create Metadata Report for a Source

get-status-metadata-reports-source

Get the Status of Metadata Reports for a Source

read-only idempotent

Capability Spec

source-metadata.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Coveo Source API — Metadata
  description: 'Coveo Source API — Metadata. 3 operations. Lead operation: Retrieve Metadata Report for a Source. Self-contained
    Naftiko capability covering one Coveo business surface.'
  tags:
  - Coveo
  - Source
  - Metadata
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COVEO_API_KEY: COVEO_API_KEY
capability:
  consumes:
  - type: http
    namespace: source-metadata
    baseUri: https://platform.cloud.coveo.com
    description: Coveo Source API — Metadata business capability. Self-contained, no shared references.
    authentication:
      type: bearer
      token: '{{env.COVEO_API_KEY}}'
    resources:
    - name: rest-organizations-organizationId-sources-sourceId-metadata
      path: /rest/organizations/{organizationId}/sources/{sourceId}/metadata
      operations:
      - name: getsourcemetadatareport
        method: GET
        description: Retrieve Metadata Report for a Source
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: sourceId
          in: path
          type: string
          description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).<br />**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
          required: true
        - name: page
          in: query
          type: integer
        - name: perPage
          in: query
          type: integer
        - name: filter
          in: query
          type: string
          description: Optional filter string. Must be at least 2 characters long to be applied.
        - name: sortBy
          in: query
          type: string
        - name: order
          in: query
          type: string
      - name: createmetadatareport
        method: POST
        description: Create Metadata Report for a Source
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: sourceId
          in: path
          type: string
          description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).<br />**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
          required: true
    - name: rest-organizations-organizationId-sources-sourceId-metadata-status
      path: /rest/organizations/{organizationId}/sources/{sourceId}/metadata/status
      operations:
      - name: getsourcemetadatastatus
        method: GET
        description: Get the Status of Metadata Reports for a Source
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).<br />**Example:**
            `mycoveocloudv2organizationg8tp8wu3`
          required: true
        - name: sourceId
          in: path
          type: string
          description: The unique identifier of the target [source](https://docs.coveo.com/en/246/).<br />**Example:** `mycoveocloudv2organizationg8tp8wu3-gravodalyysjsu34camnvxm2d2y`
          required: true
  exposes:
  - type: rest
    namespace: source-metadata-rest
    port: 8080
    description: REST adapter for Coveo Source API — Metadata. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/organizations/{organizationid}/sources/{sourceid}/metadata
      name: rest-organizations-organizationid-sources-sourceid-metadata
      description: REST surface for rest-organizations-organizationId-sources-sourceId-metadata.
      operations:
      - method: GET
        name: getsourcemetadatareport
        description: Retrieve Metadata Report for a Source
        call: source-metadata.getsourcemetadatareport
        with:
          organizationId: rest.organizationId
          sourceId: rest.sourceId
          page: rest.page
          perPage: rest.perPage
          filter: rest.filter
          sortBy: rest.sortBy
          order: rest.order
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createmetadatareport
        description: Create Metadata Report for a Source
        call: source-metadata.createmetadatareport
        with:
          organizationId: rest.organizationId
          sourceId: rest.sourceId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/organizations/{organizationid}/sources/{sourceid}/metadata/status
      name: rest-organizations-organizationid-sources-sourceid-metadata-status
      description: REST surface for rest-organizations-organizationId-sources-sourceId-metadata-status.
      operations:
      - method: GET
        name: getsourcemetadatastatus
        description: Get the Status of Metadata Reports for a Source
        call: source-metadata.getsourcemetadatastatus
        with:
          organizationId: rest.organizationId
          sourceId: rest.sourceId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: source-metadata-mcp
    port: 9090
    transport: http
    description: MCP adapter for Coveo Source API — Metadata. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: retrieve-metadata-report-source
      description: Retrieve Metadata Report for a Source
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: source-metadata.getsourcemetadatareport
      with:
        organizationId: tools.organizationId
        sourceId: tools.sourceId
        page: tools.page
        perPage: tools.perPage
        filter: tools.filter
        sortBy: tools.sortBy
        order: tools.order
      outputParameters:
      - type: object
        mapping: $.
    - name: create-metadata-report-source
      description: Create Metadata Report for a Source
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: source-metadata.createmetadatareport
      with:
        organizationId: tools.organizationId
        sourceId: tools.sourceId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-status-metadata-reports-source
      description: Get the Status of Metadata Reports for a Source
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: source-metadata.getsourcemetadatastatus
      with:
        organizationId: tools.organizationId
        sourceId: tools.sourceId
      outputParameters:
      - type: object
        mapping: $.