Skip to main content
Glama
ClickUp MCP Server

ClickUp MCP Server

by windalfin

MCP Server

A Model Context Protocol (MCP) server for integrating ClickUp tasks with AI applications. This server allows AI agents to interact with ClickUp tasks, spaces, lists, and folders through a standardized protocol.

🚧 Status Update: -The code refactoring has been completed. -Enhanced due date functionality now supports relative time expressions like "2 hours from now" with proper time display in ClickUp. -npx command updated to use @latest which should automatically update the server when a new version is released. -Server has been listed on Smithery, Glama, and Pulse MCP.

Quick Start

Directions for use with Cursor Composer Agent:

  1. Get your credentials:

  2. Go to Features in settings (or MCP Servers depending on version)

  3. Add under MCP Servers:

npx -y @taazkareem/clickup-mcp-server@latest \
  --env CLICKUP_API_KEY=your_api_key_here \
  --env CLICKUP_TEAM_ID=your_team_id_here
  1. Replace the credentials and click Save

  2. Use Natural Language to interact with your ClickUp Workspace!

Related MCP server: ClickUp MCP Integration

Smithery Installation

The server is also hosted on Smithery. There, you can preview the available tools or copy the commands to run on your specific client app.

Features

  • 🎯 Task Management

    • Create, update, and delete individual tasks

    • Move and duplicate tasks between lists, spaces, and folders

    • Create, update, move,and delete multiple tasks in bulk

    • View and modify task details and properties

    • Set due dates using natural language and relative time expressions

  • 📂 Workspace Organization

    • Complete workspace hierarchy (spaces, folders, lists)

    • Tree structure with clear relationships

    • Full CRUD operations for workspace components

    • Efficient path-based navigation

  • 🔄 Integration Features

    • Name or ID-based item lookup

    • Case-insensitive name matching

    • Markdown formatting support

    • Built-in API rate limiting

Available Tools

Tool

Description

Required Parameters

get_workspace_hierarchy

Get workspace structure

None

create_task

Create a task

name, (listId/listName)

create_bulk_tasks

Create multiple tasks

tasks[]

update_task

Modify task

taskId/taskName

update_bulk_tasks

Update multiple tasks

tasks[] with IDs or names

get_tasks

Get tasks from list

listId/listName

get_task

Get task details

taskId/taskName

delete_task

Remove task

taskId/taskName

delete_bulk_tasks

Remove multiple tasks

tasks[] with IDs or names

move_task

Move task

taskId/taskName, listId/listName

move_bulk_tasks

Move multiple tasks

tasks[] with IDs or names, target list

duplicate_task

Copy task

taskId/taskName, listId/listName

create_list

Create list in space

name, spaceId/spaceName

create_folder

Create folder

name, spaceId/spaceName

create_list_in_folder

Create list in folder

name, folderId/folderName

get_folder

Get folder details

folderId/folderName

update_folder

Update folder properties

folderId/folderName

delete_folder

Delete folder

folderId/folderName

get_list

Get list details

listId/listName

update_list

Update list properties

listId/listName

delete_list

Delete list

listId/listName

See full documentation for optional parameters and advanced usage.

Available Prompts

Not yet implemented (or needed) For now, you can send a follow up prompt after the tool result.

Prompt

Purpose

Features

summarize_tasks

Task overview

Status summary, priorities, relationships

analyze_priorities

Priority optimization

Distribution analysis, sequencing

generate_description

Task description creation

Objectives, criteria, dependencies

Error Handling

The server provides clear error messages for:

  • Missing required parameters

  • Invalid IDs or names

  • Items not found

  • Permission issues

  • API errors

  • Rate limiting

Support the Developer

If you find this project useful, please consider supporting

Sponsor TaazKareem

Contributing

Contributions are welcome! Please read our Contributing Guide for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Disclaimer

Disclaimer: This software makes use of third-party APIs and may reference trademarks or brands owned by third parties. The use of such APIs or references does not imply any affiliation with or endorsement by the respective companies. All trademarks and brand names are the property of their respective owners. This project is an independent work and is not officially associated with or sponsored by any third-party company mentioned.

Available Tools

21 tools
create_bulk_tasksA

Create multiple tasks in a list efficiently. You MUST provide:

  1. An array of tasks with required properties

  2. Either listId or listName to specify the target list

Optional: Configure batch size and concurrency for performance.

Inputs: tasks (required), listId, listName, options.

create_folderA

Create a new folder in a ClickUp space for organizing related lists. You MUST provide:

  1. A folder name

  2. Either spaceId (preferred) or spaceName

After creating a folder, you can add lists to it using create_list_in_folder.

Inputs: name (required), spaceId, spaceName, override_statuses.

create_listA

Create a new list directly in a ClickUp space (not in a folder). You MUST provide either spaceId or spaceName. For creating lists inside folders, use create_list_in_folder instead.

Inputs: name (required), spaceId, spaceName, content, +4 more.

create_list_in_folderA

Create a new list within a ClickUp folder. You MUST provide either: 1) folderId alone, or 2) folderName WITH either spaceName or spaceId. Folder names may not be unique across spaces, which is why space information is required when using folderName.

Inputs: name (required), folderId, folderName, spaceId, +3 more.

create_taskA

Create a single task in a ClickUp list. Use this tool for individual task creation only. For multiple tasks, use create_bulk_tasks instead. Before calling this tool, check if you already have the necessary list ID from previous responses in the conversation history, as this avoids redundant lookups. When creating a task, you must provide either a listId or listName.

Inputs: name (required), description, markdown_description, listId, +4 more.

delete_bulk_tasksA

⚠️ PERMANENTLY DELETE multiple tasks. This action cannot be undone. For each task, you MUST provide either:

  1. taskId alone (preferred and safest)

  2. taskName + listName (use with caution)

Inputs: tasks (required).

delete_folderA

⚠️ PERMANENTLY DELETE a folder and all its contents. This action cannot be undone. Valid parameter combinations:

  1. Use folderId alone (preferred and safest)

  2. Use folderName + (spaceId or spaceName)

WARNING: This will also delete all lists and tasks within the folder.

Inputs: folderId, folderName, spaceId, spaceName.

delete_listA

Permanently delete a ClickUp list and all its tasks. You MUST provide either listId or listName. WARNING: This action cannot be undone.

Inputs: listId, listName.

delete_taskA

⚠️ PERMANENTLY DELETE a task. This action cannot be undone. Valid parameter combinations:

  1. Use taskId alone (preferred and safest)

  2. Use taskName + optional listName (use with caution)

Inputs: taskId, taskName, listName.

duplicate_taskA

Create a copy of a task in the same or different list. Valid parameter combinations:

  1. Use taskId + optional (listId or listName) - preferred

  2. Use taskName + sourceListName + optional (listId or listName)

The duplicate preserves the original task's properties.

Inputs: taskId, taskName, sourceListName, listId, +1 more.

get_folderA

Retrieve details about a specific folder including name, status, and metadata. Valid parameter combinations:

  1. Use folderId alone (preferred)

  2. Use folderName + (spaceId or spaceName)

Helps you understand folder structure before creating or updating lists.

Inputs: folderId, folderName, spaceId, spaceName.

get_listA

Retrieve details about a specific ClickUp list. You MUST provide either listId or listName. Using listId is more reliable as list names might not be unique.

Inputs: listId, listName.

get_taskA

Retrieve detailed information about a specific task. Valid parameter combinations:

  1. Use taskId alone (preferred)

  2. Use taskName + optional listName (to disambiguate if multiple tasks have the same name)

Inputs: taskId, taskName, listName.

get_tasksA

Retrieve tasks from a list with optional filtering. You MUST provide either:

  1. listId (preferred)

  2. listName

Use filters to narrow down results by status, dates, etc.

Inputs: listId, listName, archived, page, +4 more.

get_workspace_hierarchyB

Get the complete workspace hierarchy including spaces, folders, and lists.

Inputs: no named parameters.

move_bulk_tasksA

Move multiple tasks to a different list efficiently. For each task, you MUST provide either:

  1. taskId alone (preferred)

  2. taskName + listName

WARNING: Task statuses may reset if target list has different status options.

Inputs: tasks (required), targetListId, targetListName.

move_taskA

Move a task to a different list. Valid parameter combinations:

  1. Use taskId + (listId or listName) - preferred

  2. Use taskName + sourceListName + (listId or listName)

WARNING: Task statuses may reset if destination list has different status options.

Inputs: taskId, taskName, sourceListName, listId, +1 more.

update_bulk_tasksB

Update multiple tasks efficiently. For each task, you MUST provide either:

  1. taskId alone (preferred)

  2. taskName + listName

Only specified fields will be updated for each task.

Inputs: tasks (required).

update_folderB

Modify an existing folder's properties. Valid parameter combinations:

  1. Use folderId alone (preferred)

  2. Use folderName + (spaceId or spaceName)

At least one update field (name or override_statuses) must be provided.

Inputs: folderId, folderName, spaceId, spaceName, +2 more.

update_listB

Update an existing ClickUp list's properties. You MUST provide either listId or listName, and at least one field to update (name, content, or status).

Inputs: listId, listName, name, content, +1 more.

update_taskA

Modify an existing task's properties. Valid parameter combinations:

  1. Use taskId alone (preferred if you have it)

  2. Use taskName + optional listName (to disambiguate if multiple tasks have the same name)

At least one update field (name, description, status, priority) must be provided. Only specified fields will be updated.

Inputs: taskId, taskName, listName, name, +5 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 21 tools

    Disambiguation5/5

    Every tool has a clearly distinct purpose with no ambiguity. Tools are organized by resource (task, list, folder) and action (create, get, update, delete, move, duplicate), with clear boundaries between individual and bulk operations. Descriptions explicitly differentiate similar tools, such as create_task vs. create_bulk_tasks and move_task vs. move_bulk_tasks.

    Naming Consistency5/5

    Tool names follow a consistent verb_noun pattern throughout, with verbs like create, get, update, delete, move, and duplicate paired with nouns like task, list, folder, and workspace_hierarchy. Bulk operations are consistently prefixed with 'bulk_' (e.g., create_bulk_tasks, delete_bulk_tasks), maintaining a predictable and readable naming convention.

    Tool Count4/5

    With 21 tools, the count is slightly high but reasonable for a comprehensive project management server like ClickUp. It covers multiple resources (tasks, lists, folders, workspace) and actions (CRUD, move, duplicate), which justifies the breadth. However, it borders on being heavy, as some tools could potentially be consolidated (e.g., individual and bulk operations might be combined with parameters).

    Completeness5/5

    The tool set provides complete CRUD/lifecycle coverage for the ClickUp domain, including tasks, lists, folders, and workspace hierarchy. It supports creation, retrieval, updating, deletion, moving, and duplication operations, with both individual and bulk variants where applicable. There are no obvious gaps; agents can manage the full lifecycle of resources without dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers