Discogs · Capability
Discogs API — Marketplace
Discogs — Marketplace. 14 operations. Lead operation: Discogs Get Marketplace Fee. Self-contained Naftiko capability covering one Discogs business surface.
What You Can Do
GET
Getmarketplacefee
— Discogs Get Marketplace Fee
/v1/marketplace/fee/{price}
GET
Getmarketplacefeewithcurrency
— Discogs Get Marketplace Fee With Currency
/v1/marketplace/fee/{price}/{currency}
POST
Createlisting
— Create a new listing
/v1/marketplace/listings
GET
Getlisting
— Get a listing
/v1/marketplace/listings/{listing-id}
POST
Editlisting
— Edit a listing
/v1/marketplace/listings/{listing-id}
DELETE
Deletelisting
— Delete a listing
/v1/marketplace/listings/{listing-id}
GET
Listorders
— Discogs List Orders
/v1/marketplace/orders
GET
Getorder
— Discogs Get Order
/v1/marketplace/orders/{order-id}
POST
Updateorder
— Discogs Update Order
/v1/marketplace/orders/{order-id}
GET
Listordermessages
— Discogs List Order Messages
/v1/marketplace/orders/{order-id}/messages
POST
Addordermessage
— Discogs Add Order Message
/v1/marketplace/orders/{order-id}/messages
GET
Getpricesuggestions
— Discogs Get Price Suggestions
/v1/marketplace/price-suggestions/{release-id}
GET
Getreleasestats
— Discogs Get Release Marketplace Stats
/v1/releases/{release-id}/stats
GET
Getuserinventory
— Get user inventory
/v1/users/{username}/inventory
MCP Tools
get-marketplace-fee
Discogs Get Marketplace Fee
read-only
idempotent
get-marketplace-fee-currency
Discogs Get Marketplace Fee With Currency
read-only
idempotent
createlisting
Create a new listing
read-only
getlisting
Get a listing
read-only
idempotent
editlisting
Edit a listing
read-only
deletelisting
Delete a listing
idempotent
list-orders
Discogs List Orders
read-only
idempotent
get-order
Discogs Get Order
read-only
idempotent
update-order
Discogs Update Order
list-order-messages
Discogs List Order Messages
read-only
idempotent
add-order-message
Discogs Add Order Message
get-price-suggestions
Discogs Get Price Suggestions
read-only
idempotent
get-release-stats
Discogs Get Release Marketplace Stats
read-only
idempotent
list-inventory
Get user inventory
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Discogs API — Marketplace
description: 'Discogs — Marketplace. 14 operations. Lead operation: Discogs Get Marketplace Fee. Self-contained Naftiko capability covering one Discogs business surface.'
tags:
- Discogs
- Music
- Marketplace
created: '2026-05-29'
modified: '2026-05-29'
binds:
- namespace: env
keys:
DISCOGS_TOKEN: DISCOGS_TOKEN
capability:
consumes:
- type: http
namespace: discogs-marketplace
baseUri: https://api.discogs.com
description: Discogs API — Marketplace business capability. Self-contained, no shared references.
authentication:
type: apikey
key: Authorization
value: Discogs token={{env.DISCOGS_TOKEN}}
placement: header
resources:
- name: marketplace-fee-price
path: /marketplace/fee/{price}
operations:
- name: getmarketplacefee
method: GET
description: Discogs Get Marketplace Fee
inputParameters:
- name: price
in: path
type: number
required: true
description: Transaction price in USD.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-fee-price-currency
path: /marketplace/fee/{price}/{currency}
operations:
- name: getmarketplacefeewithcurrency
method: GET
description: Discogs Get Marketplace Fee With Currency
inputParameters:
- name: price
in: path
type: number
required: true
description: Transaction price.
- name: currency
in: path
type: string
required: true
description: ISO currency code.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-listings
path: /marketplace/listings
operations:
- name: createlisting
method: POST
description: Create a new listing
inputParameters:
- name: body
in: body
type: object
required: true
description: Request body (JSON).
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-listings-listing-id
path: /marketplace/listings/{listing_id}
operations:
- name: getlisting
method: GET
description: Get a listing
inputParameters:
- name: listing_id
in: path
type: integer
required: true
description: The ID of the marketplace listing.
- name: curr_abbr
in: query
type: string
required: false
description: Currency for marketplace data.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: editlisting
method: POST
description: Edit a listing
inputParameters:
- name: listing_id
in: path
type: integer
required: true
description: The ID of the marketplace listing.
- name: body
in: body
type: object
required: true
description: Request body (JSON).
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: deletelisting
method: DELETE
description: Delete a listing
inputParameters:
- name: listing_id
in: path
type: integer
required: true
description: The ID of the marketplace listing.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-orders
path: /marketplace/orders
operations:
- name: listorders
method: GET
description: Discogs List Orders
inputParameters:
- name: status
in: query
type: string
required: false
description: Filter by order status.
- name: created_after
in: query
type: string
required: false
description: Return orders created after this ISO 8601 datetime.
- name: created_before
in: query
type: string
required: false
description: Return orders created before this ISO 8601 datetime.
- name: archived
in: query
type: boolean
required: false
description: Whether to include archived orders.
- name: sort
in: query
type: string
required: false
description: Sort field.
- name: sort_order
in: query
type: string
required: false
description: Sort order.
- 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: marketplace-orders-order-id
path: /marketplace/orders/{order_id}
operations:
- name: getorder
method: GET
description: Discogs Get Order
inputParameters:
- name: order_id
in: path
type: string
required: true
description: Order ID (e.g. 1-1).
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: updateorder
method: POST
description: Discogs Update Order
inputParameters:
- name: order_id
in: path
type: string
required: true
description: Order ID.
- name: body
in: body
type: object
required: true
description: Request body (JSON).
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-orders-order-id-messages
path: /marketplace/orders/{order_id}/messages
operations:
- name: listordermessages
method: GET
description: Discogs List Order Messages
inputParameters:
- name: order_id
in: path
type: string
required: true
description: Order ID.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: addordermessage
method: POST
description: Discogs Add Order Message
inputParameters:
- name: order_id
in: path
type: string
required: true
description: Order ID.
- name: body
in: body
type: object
required: true
description: Request body (JSON).
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: marketplace-price-suggestions-release-id
path: /marketplace/price_suggestions/{release_id}
operations:
- name: getpricesuggestions
method: GET
description: Discogs Get Price Suggestions
inputParameters:
- name: release_id
in: path
type: integer
required: true
description: Release ID.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: releases-release-id-stats
path: /releases/{release_id}/stats
operations:
- name: getreleasestats
method: GET
description: Discogs Get Release Marketplace Stats
inputParameters:
- name: release_id
in: path
type: integer
required: true
description: Release ID.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: users-username-inventory
path: /users/{username}/inventory
operations:
- name: getuserinventory
method: GET
description: Get user inventory
inputParameters:
- name: username
in: path
type: string
required: true
description: The user's Discogs username.
- name: status
in: query
type: string
required: false
description: Only show items with this status.
- name: page
in: query
type: integer
required: false
description: The page number to return.
- name: per_page
in: query
type: integer
required: false
description: The number of items to return per page.
- name: sort
in: query
type: string
required: false
description: Sort items by this field.
- name: sort_order
in: query
type: string
required: false
description: The order to sort the results.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
namespace: discogs-marketplace-rest
port: 8080
description: REST adapter for Discogs API — Marketplace. One Spectral-compliant resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/marketplace/fee/{price}
name: marketplace-fee-price
description: REST surface for Discogs Get Marketplace Fee.
operations:
- method: GET
name: getmarketplacefee
description: Discogs Get Marketplace Fee
call: discogs-marketplace.getmarketplacefee
outputParameters:
- type: object
mapping: $.
with:
price: rest.price
- path: /v1/marketplace/fee/{price}/{currency}
name: marketplace-fee-price-currency
description: REST surface for Discogs Get Marketplace Fee With Currency.
operations:
- method: GET
name: getmarketplacefeewithcurrency
description: Discogs Get Marketplace Fee With Currency
call: discogs-marketplace.getmarketplacefeewithcurrency
outputParameters:
- type: object
mapping: $.
with:
price: rest.price
currency: rest.currency
- path: /v1/marketplace/listings
name: marketplace-listings
description: REST surface for Create a new listing.
operations:
- method: POST
name: createlisting
description: Create a new listing
call: discogs-marketplace.createlisting
outputParameters:
- type: object
mapping: $.
with:
body: rest.body
- path: /v1/marketplace/listings/{listing-id}
name: marketplace-listings-listing-id
description: REST surface for Get a listing.
operations:
- method: GET
name: getlisting
description: Get a listing
call: discogs-marketplace.getlisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: rest.listing_id
curr_abbr: rest.curr_abbr
- path: /v1/marketplace/listings/{listing-id}
name: marketplace-listings-listing-id
description: REST surface for Edit a listing.
operations:
- method: POST
name: editlisting
description: Edit a listing
call: discogs-marketplace.editlisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: rest.listing_id
body: rest.body
- path: /v1/marketplace/listings/{listing-id}
name: marketplace-listings-listing-id
description: REST surface for Delete a listing.
operations:
- method: DELETE
name: deletelisting
description: Delete a listing
call: discogs-marketplace.deletelisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: rest.listing_id
- path: /v1/marketplace/orders
name: marketplace-orders
description: REST surface for Discogs List Orders.
operations:
- method: GET
name: listorders
description: Discogs List Orders
call: discogs-marketplace.listorders
outputParameters:
- type: object
mapping: $.
with:
status: rest.status
created_after: rest.created_after
created_before: rest.created_before
archived: rest.archived
sort: rest.sort
sort_order: rest.sort_order
page: rest.page
per_page: rest.per_page
- path: /v1/marketplace/orders/{order-id}
name: marketplace-orders-order-id
description: REST surface for Discogs Get Order.
operations:
- method: GET
name: getorder
description: Discogs Get Order
call: discogs-marketplace.getorder
outputParameters:
- type: object
mapping: $.
with:
order_id: rest.order_id
- path: /v1/marketplace/orders/{order-id}
name: marketplace-orders-order-id
description: REST surface for Discogs Update Order.
operations:
- method: POST
name: updateorder
description: Discogs Update Order
call: discogs-marketplace.updateorder
outputParameters:
- type: object
mapping: $.
with:
order_id: rest.order_id
body: rest.body
- path: /v1/marketplace/orders/{order-id}/messages
name: marketplace-orders-order-id-messages
description: REST surface for Discogs List Order Messages.
operations:
- method: GET
name: listordermessages
description: Discogs List Order Messages
call: discogs-marketplace.listordermessages
outputParameters:
- type: object
mapping: $.
with:
order_id: rest.order_id
- path: /v1/marketplace/orders/{order-id}/messages
name: marketplace-orders-order-id-messages
description: REST surface for Discogs Add Order Message.
operations:
- method: POST
name: addordermessage
description: Discogs Add Order Message
call: discogs-marketplace.addordermessage
outputParameters:
- type: object
mapping: $.
with:
order_id: rest.order_id
body: rest.body
- path: /v1/marketplace/price-suggestions/{release-id}
name: marketplace-price-suggestions-release-id
description: REST surface for Discogs Get Price Suggestions.
operations:
- method: GET
name: getpricesuggestions
description: Discogs Get Price Suggestions
call: discogs-marketplace.getpricesuggestions
outputParameters:
- type: object
mapping: $.
with:
release_id: rest.release_id
- path: /v1/releases/{release-id}/stats
name: releases-release-id-stats
description: REST surface for Discogs Get Release Marketplace Stats.
operations:
- method: GET
name: getreleasestats
description: Discogs Get Release Marketplace Stats
call: discogs-marketplace.getreleasestats
outputParameters:
- type: object
mapping: $.
with:
release_id: rest.release_id
- path: /v1/users/{username}/inventory
name: users-username-inventory
description: REST surface for Get user inventory.
operations:
- method: GET
name: getuserinventory
description: Get user inventory
call: discogs-marketplace.getuserinventory
outputParameters:
- type: object
mapping: $.
with:
username: rest.username
status: rest.status
page: rest.page
per_page: rest.per_page
sort: rest.sort
sort_order: rest.sort_order
- type: mcp
namespace: discogs-marketplace-mcp
port: 9090
transport: http
description: MCP adapter for Discogs API — Marketplace. One tool per consumed operation, routed inline through this capability's consumes block.
tools:
- name: get-marketplace-fee
description: Discogs Get Marketplace Fee
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getmarketplacefee
outputParameters:
- type: object
mapping: $.
with:
price: tools.price
- name: get-marketplace-fee-currency
description: Discogs Get Marketplace Fee With Currency
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getmarketplacefeewithcurrency
outputParameters:
- type: object
mapping: $.
with:
price: tools.price
currency: tools.currency
- name: createlisting
description: Create a new listing
hints:
readOnly: true
destructive: false
idempotent: false
call: discogs-marketplace.createlisting
outputParameters:
- type: object
mapping: $.
with:
body: tools.body
- name: getlisting
description: Get a listing
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getlisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: tools.listing_id
curr_abbr: tools.curr_abbr
- name: editlisting
description: Edit a listing
hints:
readOnly: true
destructive: false
idempotent: false
call: discogs-marketplace.editlisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: tools.listing_id
body: tools.body
- name: deletelisting
description: Delete a listing
hints:
readOnly: false
destructive: true
idempotent: true
call: discogs-marketplace.deletelisting
outputParameters:
- type: object
mapping: $.
with:
listing_id: tools.listing_id
- name: list-orders
description: Discogs List Orders
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.listorders
outputParameters:
- type: object
mapping: $.
with:
status: tools.status
created_after: tools.created_after
created_before: tools.created_before
archived: tools.archived
sort: tools.sort
sort_order: tools.sort_order
page: tools.page
per_page: tools.per_page
- name: get-order
description: Discogs Get Order
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getorder
outputParameters:
- type: object
mapping: $.
with:
order_id: tools.order_id
- name: update-order
description: Discogs Update Order
hints:
readOnly: false
destructive: false
idempotent: false
call: discogs-marketplace.updateorder
outputParameters:
- type: object
mapping: $.
with:
order_id: tools.order_id
body: tools.body
- name: list-order-messages
description: Discogs List Order Messages
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.listordermessages
outputParameters:
- type: object
mapping: $.
with:
order_id: tools.order_id
- name: add-order-message
description: Discogs Add Order Message
hints:
readOnly: false
destructive: false
idempotent: false
call: discogs-marketplace.addordermessage
outputParameters:
- type: object
mapping: $.
with:
order_id: tools.order_id
body: tools.body
- name: get-price-suggestions
description: Discogs Get Price Suggestions
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getpricesuggestions
outputParameters:
- type: object
mapping: $.
with:
release_id: tools.release_id
- name: get-release-stats
description: Discogs Get Release Marketplace Stats
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getreleasestats
outputParameters:
- type: object
mapping: $.
with:
release_id: tools.release_id
- name: list-inventory
description: Get user inventory
hints:
readOnly: true
destructive: false
idempotent: true
call: discogs-marketplace.getuserinventory
outputParameters:
- type: object
mapping: $.
with:
username: tools.username
status: tools.status
page: tools.page
per_page: tools.per_page
sort: tools.sort
sort_order: tools.sort_order