Discogs · Capability

Discogs API — Inventory Management

Discogs — Inventory Management. 9 operations. Lead operation: Discogs List Inventory Exports. Self-contained Naftiko capability covering one Discogs business surface.

Run with Naftiko DiscogsMusicInventory Management

What You Can Do

GET
Listinventoryexports — Discogs List Inventory Exports
/v1/inventory/export
POST
Requestinventoryexport — Discogs Request Inventory Export
/v1/inventory/export
GET
Getinventoryexport — Discogs Get Inventory Export
/v1/inventory/export/{export-id}
GET
Downloadinventoryexport — Discogs Download Inventory Export
/v1/inventory/export/{export-id}/download
GET
Listinventoryuploads — Discogs List Inventory Uploads
/v1/inventory/upload
POST
Addinventoryupload — Discogs Add Inventory Upload
/v1/inventory/upload/add
POST
Changeinventoryupload — Discogs Change Inventory Upload
/v1/inventory/upload/change
POST
Deleteinventoryupload — Discogs Delete Inventory Upload
/v1/inventory/upload/delete
GET
Getinventoryupload — Discogs Get Inventory Upload
/v1/inventory/upload/{upload-id}

MCP Tools

list-inventory-exports

Discogs List Inventory Exports

read-only idempotent
request-inventory-export

Discogs Request Inventory Export

get-inventory-export

Discogs Get Inventory Export

read-only idempotent
download-inventory-export

Discogs Download Inventory Export

read-only idempotent
list-inventory-uploads

Discogs List Inventory Uploads

read-only idempotent
add-inventory-upload

Discogs Add Inventory Upload

change-inventory-upload

Discogs Change Inventory Upload

delete-inventory-upload

Discogs Delete Inventory Upload

get-inventory-upload

Discogs Get Inventory Upload

read-only idempotent

Capability Spec

discogs-inventory-management.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Discogs API — Inventory Management
  description: 'Discogs — Inventory Management. 9 operations. Lead operation: Discogs List Inventory Exports. Self-contained Naftiko capability covering one Discogs business surface.'
  tags:
  - Discogs
  - Music
  - Inventory Management
  created: '2026-05-29'
  modified: '2026-05-29'
binds:
- namespace: env
  keys:
    DISCOGS_TOKEN: DISCOGS_TOKEN
capability:
  consumes:
  - type: http
    namespace: discogs-inventory-management
    baseUri: https://api.discogs.com
    description: Discogs API — Inventory Management business capability. Self-contained, no shared references.
    authentication:
      type: apikey
      key: Authorization
      value: Discogs token={{env.DISCOGS_TOKEN}}
      placement: header
    resources:
    - name: inventory-export
      path: /inventory/export
      operations:
      - name: listinventoryexports
        method: GET
        description: Discogs List Inventory Exports
        inputParameters:
        - name: page
          in: query
          type: integer
          required: false
          description: Page number.
        - name: per_page
          in: query
          type: integer
          required: false
          description: Items per page.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: requestinventoryexport
        method: POST
        description: Discogs Request Inventory Export
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-export-export-id
      path: /inventory/export/{export_id}
      operations:
      - name: getinventoryexport
        method: GET
        description: Discogs Get Inventory Export
        inputParameters:
        - name: export_id
          in: path
          type: integer
          required: true
          description: Export job ID.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-export-export-id-download
      path: /inventory/export/{export_id}/download
      operations:
      - name: downloadinventoryexport
        method: GET
        description: Discogs Download Inventory Export
        inputParameters:
        - name: export_id
          in: path
          type: integer
          required: true
          description: Export job ID.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-upload
      path: /inventory/upload
      operations:
      - name: listinventoryuploads
        method: GET
        description: Discogs List Inventory Uploads
        inputParameters:
        - name: page
          in: query
          type: integer
          required: false
          description: Page number.
        - name: per_page
          in: query
          type: integer
          required: false
          description: Items per page.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-upload-add
      path: /inventory/upload/add
      operations:
      - name: addinventoryupload
        method: POST
        description: Discogs Add Inventory Upload
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
          description: Request body (JSON).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-upload-change
      path: /inventory/upload/change
      operations:
      - name: changeinventoryupload
        method: POST
        description: Discogs Change Inventory Upload
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
          description: Request body (JSON).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-upload-delete
      path: /inventory/upload/delete
      operations:
      - name: deleteinventoryupload
        method: POST
        description: Discogs Delete Inventory Upload
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
          description: Request body (JSON).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: inventory-upload-upload-id
      path: /inventory/upload/{upload_id}
      operations:
      - name: getinventoryupload
        method: GET
        description: Discogs Get Inventory Upload
        inputParameters:
        - name: upload_id
          in: path
          type: integer
          required: true
          description: Upload job ID.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: discogs-inventory-management-rest
    port: 8080
    description: REST adapter for Discogs API — Inventory Management. One Spectral-compliant resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/inventory/export
      name: inventory-export
      description: REST surface for Discogs List Inventory Exports.
      operations:
      - method: GET
        name: listinventoryexports
        description: Discogs List Inventory Exports
        call: discogs-inventory-management.listinventoryexports
        outputParameters:
        - type: object
          mapping: $.
        with:
          page: rest.page
          per_page: rest.per_page
    - path: /v1/inventory/export
      name: inventory-export
      description: REST surface for Discogs Request Inventory Export.
      operations:
      - method: POST
        name: requestinventoryexport
        description: Discogs Request Inventory Export
        call: discogs-inventory-management.requestinventoryexport
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/inventory/export/{export-id}
      name: inventory-export-export-id
      description: REST surface for Discogs Get Inventory Export.
      operations:
      - method: GET
        name: getinventoryexport
        description: Discogs Get Inventory Export
        call: discogs-inventory-management.getinventoryexport
        outputParameters:
        - type: object
          mapping: $.
        with:
          export_id: rest.export_id
    - path: /v1/inventory/export/{export-id}/download
      name: inventory-export-export-id-download
      description: REST surface for Discogs Download Inventory Export.
      operations:
      - method: GET
        name: downloadinventoryexport
        description: Discogs Download Inventory Export
        call: discogs-inventory-management.downloadinventoryexport
        outputParameters:
        - type: object
          mapping: $.
        with:
          export_id: rest.export_id
    - path: /v1/inventory/upload
      name: inventory-upload
      description: REST surface for Discogs List Inventory Uploads.
      operations:
      - method: GET
        name: listinventoryuploads
        description: Discogs List Inventory Uploads
        call: discogs-inventory-management.listinventoryuploads
        outputParameters:
        - type: object
          mapping: $.
        with:
          page: rest.page
          per_page: rest.per_page
    - path: /v1/inventory/upload/add
      name: inventory-upload-add
      description: REST surface for Discogs Add Inventory Upload.
      operations:
      - method: POST
        name: addinventoryupload
        description: Discogs Add Inventory Upload
        call: discogs-inventory-management.addinventoryupload
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
    - path: /v1/inventory/upload/change
      name: inventory-upload-change
      description: REST surface for Discogs Change Inventory Upload.
      operations:
      - method: POST
        name: changeinventoryupload
        description: Discogs Change Inventory Upload
        call: discogs-inventory-management.changeinventoryupload
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
    - path: /v1/inventory/upload/delete
      name: inventory-upload-delete
      description: REST surface for Discogs Delete Inventory Upload.
      operations:
      - method: POST
        name: deleteinventoryupload
        description: Discogs Delete Inventory Upload
        call: discogs-inventory-management.deleteinventoryupload
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
    - path: /v1/inventory/upload/{upload-id}
      name: inventory-upload-upload-id
      description: REST surface for Discogs Get Inventory Upload.
      operations:
      - method: GET
        name: getinventoryupload
        description: Discogs Get Inventory Upload
        call: discogs-inventory-management.getinventoryupload
        outputParameters:
        - type: object
          mapping: $.
        with:
          upload_id: rest.upload_id
  - type: mcp
    namespace: discogs-inventory-management-mcp
    port: 9090
    transport: http
    description: MCP adapter for Discogs API — Inventory Management. One tool per consumed operation, routed inline through this capability's consumes block.
    tools:
    - name: list-inventory-exports
      description: Discogs List Inventory Exports
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: discogs-inventory-management.listinventoryexports
      outputParameters:
      - type: object
        mapping: $.
      with:
        page: tools.page
        per_page: tools.per_page
    - name: request-inventory-export
      description: Discogs Request Inventory Export
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: discogs-inventory-management.requestinventoryexport
      outputParameters:
      - type: object
        mapping: $.
    - name: get-inventory-export
      description: Discogs Get Inventory Export
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: discogs-inventory-management.getinventoryexport
      outputParameters:
      - type: object
        mapping: $.
      with:
        export_id: tools.export_id
    - name: download-inventory-export
      description: Discogs Download Inventory Export
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: discogs-inventory-management.downloadinventoryexport
      outputParameters:
      - type: object
        mapping: $.
      with:
        export_id: tools.export_id
    - name: list-inventory-uploads
      description: Discogs List Inventory Uploads
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: discogs-inventory-management.listinventoryuploads
      outputParameters:
      - type: object
        mapping: $.
      with:
        page: tools.page
        per_page: tools.per_page
    - name: add-inventory-upload
      description: Discogs Add Inventory Upload
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: discogs-inventory-management.addinventoryupload
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: change-inventory-upload
      description: Discogs Change Inventory Upload
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: discogs-inventory-management.changeinventoryupload
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: delete-inventory-upload
      description: Discogs Delete Inventory Upload
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: discogs-inventory-management.deleteinventoryupload
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: get-inventory-upload
      description: Discogs Get Inventory Upload
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: discogs-inventory-management.getinventoryupload
      outputParameters:
      - type: object
        mapping: $.
      with:
        upload_id: tools.upload_id