Skip to main content
Glama
cswkim

Discogs MCP Server

by cswkim

create_user_collection_folder

Organize your Discogs music collection by adding folders for specific storage needs. Input a username and folder name to create a structured collection system.

Instructions

Create a new folder in a user's collection

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo
usernameYes

Implementation Reference

  • Defines the MCP Tool object named 'create_user_collection_folder' with its execute handler that creates a UserService instance and calls the collection.createFolder method.
    export const createUserCollectionFolderTool: Tool< FastMCPSessionAuth, typeof UserCollectionFolderCreateParamsSchema > = { name: 'create_user_collection_folder', description: `Create a new folder in a user's collection`, parameters: UserCollectionFolderCreateParamsSchema, execute: async (args) => { try { const userService = new UserService(); const folder = await userService.collection.createFolder(args); return JSON.stringify(folder); } catch (error) { throw formatDiscogsError(error); } }, };
  • Zod schema defining the input parameters for creating a user collection folder (extends UsernameInputSchema with optional name).
    export const UserCollectionFolderCreateParamsSchema = UsernameInputSchema.extend({ name: z.string().optional(), });
  • Registers the createUserCollectionFolderTool with the FastMCP server.
    server.addTool(createUserCollectionFolderTool);
  • Implements the core logic for creating a folder via Discogs API POST to /${username}/collection/folders, with error handling and response validation.
    async createFolder({ username, ...body }: UserCollectionFolderCreateParams): Promise<UserCollectionFolder> { try { const response = await this.request<UserCollectionFolder>(`/${username}/collection/folders`, { method: 'POST', body, }); // Validate the response using Zod schema const validatedResponse = UserCollectionFolderSchema.parse(response); return validatedResponse; } catch (error) { if (isDiscogsError(error)) { throw error; } throw new Error(`Failed to create folder: ${String(error)}`); } }

Other Tools

Related Tools

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