# ClickUp MCP - Premium

**A professional-grade bridge connecting AI to your ClickUp Workspace.**

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add taazkareem/clickup-mcp-premium

# Browse available tools
npx -y @smithery/cli@latest tool list taazkareem/clickup-mcp-premium

# Get full schema for a tool
npx -y @smithery/cli@latest tool get taazkareem/clickup-mcp-premium get_workspace_hierarchy

# Call a tool
npx -y @smithery/cli@latest tool call taazkareem/clickup-mcp-premium get_workspace_hierarchy '{}'
```

## Direct MCP Connection

Endpoint: `https://clickup-mcp-premium--taazkareem.run.tools`

**Required config:**
- `X-ClickUp-Key` (header) — Your ClickUp API Key available at https://app.clickup.com/settings/apps
- `X-ClickUp-Team-Id` (header) — Open ClickUp in your browser.
Look at the URL: https://app.clickup.com/[TEAM_ID]/v/...
- `CLICKUP_MCP_LICENSE_KEY` (header) — Purchase key at:          
https://clickup-mcp.taazkareem.com/checkout

## Tools (54)

- `get_workspace_hierarchy` — Returns all spaces, folders, and lists in workspace (excludes tasks). Use to browse workspace structure. DO NOT use thi…
- `create_task` — Create a task. Requires: name + (listId or listName). Use create_bulk_tasks for multiple. Supports subtasks via parent,…
- `get_task` — Get detailed task info. If a task name is provided do not lookup the task ID, it will be resolved automatically.
- `update_task` — Update task properties. Support automatic name resolution: provide the task Name directly to the 'task' argument and it…
- `move_task` — Move task to different list. If a task name is provided do not lookup the task ID, it will be resolved automatically. W…
- `duplicate_task` — Duplicate task. Provide source task Name or ID. Optionally specify target list.
- `delete_task` — PERMANENTLY delete task. If a task name is provided do not lookup the task ID, it will be resolved automatically. Canno…
- `get_task_comments` — Get task comments. If a task name is provided do not lookup the task ID, it will be resolved automatically. Set include…
- `create_task_comment` — Create task comment. If a task name is provided do not lookup the task ID, it will be resolved automatically. Provide c…
- `attach_task_file` — Attach file to task. Supports base64, URL, or local path. Requires taskId (preferred) or taskName.
- `create_bulk_tasks` — Create multiple tasks in one list. Requires: tasks array + (listId or listName). Each task needs name. Options: batch s…
- `update_bulk_tasks` — Update multiple tasks. Each task needs: taskId or taskName + listName. Options: batch size, concurrency.
- `move_bulk_tasks` — Move multiple tasks to one list. Each task needs: taskId or taskName + listName. Target: targetListId or targetListName…
- `delete_bulk_tasks` — PERMANENTLY delete multiple tasks. Each task needs: taskId or taskName + listName. Cannot be undone.
- `get_workspace_tasks` — Retrieve MULTIPLE tasks from workspace using broad filters. Returns full task details including description. Important:…
- `get_task_time_entries` — Get time entries for a task. Use taskId (preferred) or taskName + optional listName. Optional date/assignee filters.
- `start_time_tracking` — Start time tracking on a task. Use taskId (preferred) or taskName + listName. Only one timer can run at a time.
- `stop_time_tracking` — Stop the currently running timer. Returns completed time entry details.
- `add_time_entry` — Add manual time entry to a task. Requires: start time, duration. Use taskId (preferred) or taskName + listName.
- `delete_time_entry` — Delete a time entry. Requires timeEntryId.
- `get_current_time_entry` — Get the currently running time entry, if any.
- `add_task_link` — Link two tasks. Requires taskId (preferred) or taskName for both source and target.
- `get_task_links` — Get dependencies/links for a task. Requires taskId (preferred) or taskName.
- `delete_task_link` — Remove link between tasks. Requires taskId (preferred) and linkId (target task ID).
- `create_list` — Create list in space. Requires name + (spaceId or spaceName). Optional: content, dueDate, priority, assignee, status.
- `create_list_in_folder` — Create list in folder. Requires name + (folderId or folderName + space info). Optional: content, status.
- `get_list` — Get list details. Requires listId (preferred) or listName.
- `update_list` — Update list. Requires listId/listName. Optional: name, content, status.
- `delete_list` — Delete list. Requires listId (preferred) or listName. WARNING: Permanent.
- `create_folder` — Create folder in space. Requires name + (spaceId or spaceName). Optional: override_statuses.
- `get_folder` — Get folder details. Requires folderId (preferred) or folderName + space info.
- `update_folder` — Update folder. Requires folderId/folderName + space info. Optional: name, override_statuses.
- `delete_folder` — Delete folder. Requires folderId (preferred) or folderName + space info. WARNING: Permanent.
- `get_space_tags` — Gets all tags in a ClickUp space. Use spaceId (preferred) or spaceName. Tags are defined at space level - check availab…
- `create_space_tag` — Create tag in ClickUp space. Requires tagName + (spaceId or spaceName). Optional: tagBg/tagFg in HEX or colorCommand fo…
- `update_space_tag` — Update tag in ClickUp space. Requires tagName + (spaceId or spaceName). At least one: newTagName, tagBg, tagFg, or colo…
- `delete_space_tag` — Delete tag from ClickUp space. Requires tagName + (spaceId or spaceName). Warning: removes from all tasks, cannot be un…
- `add_tag_to_task` — Add tag to task. Requires tagName + (taskId or taskName + optional listName). Tag must exist in space.
- `remove_tag_from_task` — Remove tag from task. Requires tagName + (taskId or taskName + optional listName). Only removes association; tag remain…
- `get_workspace_members` — Get all workspace members. Useful for resolving assignees.
- `find_member_by_name` — Find member by name/email. Returns member object or null.
- `resolve_assignees` — Resolve list of names/emails to User IDs.
- `create_chat_channel` — Create chat channel in space/folder/list. Requires name.
- `get_chat_channels` — Get all chat channels in the workspace
- `create_chat_message` — Send message to chat channel. Requires channel_id/name + text.
- `get_chat_messages` — Get messages from channel. Requires channel_id/name.
- `submit_feedback` — Submit feedback, bug reports, or feature requests for the ClickUp MCP Server - Premium. Generates a GitHub issue link w…
- `create_document` — Create document. Requires name + parent (id/name + type). Optional: visibility, create_page.
- `get_document` — Get document details. Requires documentId (preferred) or title + parent (id/name + type).
- `list_documents` — Lists all documents in a ClickUp space, folder, or list.
- `list_document_pages` — List pages. Requires docId (preferred) or name + parent context. Optional: depth.
- `get_document_pages` — Get pages content. Requires docId or name+context. + pageIds.
- `create_document_page` — Create page. Requires docId or name+context + page name.
- `update_document_page` — Update page. Requires docId or name+context + pageId.

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get taazkareem/clickup-mcp-premium <tool-name>
```
