Skip to main content
Glama
cswkim

Discogs MCP Server

by cswkim

get_marketplace_order

Retrieve details of a specific Discogs marketplace order by providing its order ID to access transaction information.

Instructions

Get a marketplace order

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
order_idYes

Implementation Reference

  • MCP tool handler (execute function) for 'get_marketplace_order', which delegates to MarketplaceService.getOrder
    export const getMarketplaceOrderTool: Tool<FastMCPSessionAuth, typeof OrderIdParamSchema> = {
      name: 'get_marketplace_order',
      description: 'Get a marketplace order',
      parameters: OrderIdParamSchema,
      execute: async (args) => {
        try {
          const marketplaceService = new MarketplaceService();
          const order = await marketplaceService.getOrder(args);
    
          return JSON.stringify(order);
        } catch (error) {
          throw formatDiscogsError(error);
        }
      },
    };
  • Input parameter schema for the tool: requires 'order_id' as a number.
    export const OrderIdParamSchema = z.object({
      order_id: z.number(),
    });
  • Registration of the getMarketplaceOrderTool with the FastMCP server.
    server.addTool(getMarketplaceOrderTool);
  • Implementation of getOrder in MarketplaceService, performs authenticated API request to Discogs /orders/{order_id} and validates response.
    async getOrder({ order_id }: OrderIdParam): Promise<OrderResponse> {
      try {
        const response = await this.request<OrderResponse>(`/orders/${order_id}`);
    
        const validatedResponse = OrderResponseSchema.parse(response);
        return validatedResponse;
      } catch (error) {
        if (isDiscogsError(error)) {
          throw error;
        }
    
        throw new Error(`Failed to get order: ${String(error)}`);
      }
    }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cswkim/discogs-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server