- Home
- MCP servers
- ClickUp
ClickUp
- python
2
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"imjoshnewton-clickup-mcp-server": {
"command": "uvx",
"args": [
"clickup-mcp-server",
"--api-key",
"YOUR_API_KEY"
],
"env": {
"CLICKUP_API_KEY": "YOUR_API_KEY"
}
}
}
}You can use the ClickUp MCP Server to let AI systems read, create, and manage your ClickUp workspace. This server exposes a rich set of tools for manipulating tasks, lists, spaces, folders, and more, with friendly API responses and robust error handling to support automation and AI-assisted workflows.
How to use
You interact with the server through an MCP client or integration that speaks the Model Context Protocol. Start by running the server locally or in a container, then configure your MCP client to connect via one of the supported runtime methods. You can choose a local stdio-based runtime (executing the server directly in your environment) or a containerized/remote approach. Once the server is running, you can ask your AI assistant to perform tasks like creating tasks, updating statuses, organizing spaces, and adding comments or attachments to ClickUp items.
Practical usage patterns you can perform with Claude or another MCP client include: creating tasks in a specific list, updating task details, moving tasks between lists, organizing spaces and folders, and querying custom fields. You can also automate subtasks, add comments and attachments, and run bulk operations across multiple tasks. Use the hierarchical workspace navigation tools to reach the exact space, folder, or list you want to work with, and then apply the desired operations.
How to install
Prerequisites you need before installing: Python 3.10 or higher and a ClickUp API key. You will use the API key to authorize the MCP server with ClickUp.
# Install the MCP server via pip
pip install clickup-mcp-server
# Run the server with your ClickUp API key
python -m clickup_mcp_server --api-key YOUR_API_KEY
Configuration and usage notes
You can provide your ClickUp API key in command-line arguments or via an environment variable. The recommended approach is to pass the API key as a command-line flag or to set CLICKUP_API_KEY in your environment.
{
"mcpServers": {
"clickup": {
"command": "uvx",
"args": ["clickup-mcp-server", "--api-key", "YOUR_API_KEY"]
}
}
}
Security and keys
Keep your ClickUp API key secret. Do not expose it in public scripts or shared configurations. Use environment variables or secure vaults to manage credentials where possible.
Available tools
get_workspaces
Retrieves all workspaces or teams with their IDs and names.
navigate_workspace
Traverses the workspace hierarchy using a path notation such as team_id/space_name/folder_name/list_name and returns details of the target entity along with its full path.
get_spaces
Lists all spaces within a specified workspace by ID.
create_space
Creates a new space within a specified workspace and returns details of the created space.
get_space_hierarchy
Fetches the full hierarchy of a space, including folders and lists.
get_folders
Gets all folders inside a space by space ID.
create_folder
Creates a new folder inside a space and returns the created folder details.
update_folder
Updates the name of a folder and returns the updated folder details.
delete_folder
Deletes a folder and returns a deletion confirmation.
get_lists
Retrieves all lists or boards in a space.
create_list
Creates a new list or board in a space or folder and returns its details.
organize_lists
Organizes lists by their location, either in a space or inside a folder.
get_tasks
Fetches all tasks within a list or board and returns task details.
get_tasks_by_status
Filters tasks by a given status within a list or board.
create_task
Creates a new task in a list or board and returns the created task details.
get_task
Retrieves complete details for a specific task.
update_task
Updates properties of a task and returns the updated task details.
update_task_status
Updates the status of a task and returns the updated task details.
assign_task
Assigns users to a task and returns a confirmation of assignment.
get_task_subtasks
Gets subtasks for a given parent task.
delete_task
Deletes a task and returns a confirmation of deletion.
move_task
Moves a task to a different list or board and returns the updated task.
duplicate_task
Duplicates a task, optionally to another list or board, and returns the duplicated task.
create_subtask
Creates a subtask under a parent task and returns its details.
add_comment
Adds a markdown-enabled comment to a task and returns the added comment details.
add_attachment
Attaches a URL-based attachment to a task and returns the attachment details.
bulk_update_tasks
Updates multiple tasks in one operation and returns a bulk update confirmation.
bulk_delete_tasks
Deletes multiple tasks in one operation and returns a bulk deletion confirmation.
get_custom_fields
Retrieves all custom fields for a list or board.
set_custom_field_value
Sets a custom field value for a task by field ID and returns a confirmation.
set_custom_field_value_by_name
Sets a custom field value by field name within a list and returns a confirmation.
remove_custom_field_value
Removes a custom field value from a task and returns a confirmation.