create_list
Create a new task list within a specified ClickUp folder to organize and manage project workflows efficiently.
Instructions
Create a new list in a folder
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| folder_id | Yes | ClickUp folder ID | |
| name | Yes | List name |
Implementation Reference
- src/controllers/list.controller.ts:33-49 (handler)The handler function for the create_list tool. It calls the list service's createList method and formats the response.const createListTool = defineTool((z) => ({ name: "create_list", description: "Create a new list in a folder", inputSchema: { folder_id: z.string().describe("ClickUp folder ID"), name: z.string().describe("List name"), }, handler: async (input) => { const { folder_id, name } = input; const response = await listService.createList(folder_id, { name, }); return { content: [{ type: "text", text: JSON.stringify(response) }], }; }, }));
- Input schema using Zod for validating folder_id and name parameters.inputSchema: { folder_id: z.string().describe("ClickUp folder ID"), name: z.string().describe("List name"), },
- src/index.ts:89-91 (registration)Registers all tools, including create_list (via createListTool), with the MCP server.tools.forEach((tool) => { server.tool(tool.name, tool.description, tool.inputSchema, tool.handler); });
- src/index.ts:21-21 (registration)Imports the createListTool for use in tool registration.import { getListsTool, createListTool } from "./controllers/list.controller";
- src/services/list.service.ts:32-42 (helper)Supporting service method that performs the HTTP POST request to ClickUp API to create the list.async createList( folderId: string, params: { name: string; } ) { return this.request(`/folder/${folderId}/list`, { method: "POST", body: JSON.stringify(params), }); }