Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Manage ClickUp tasks, docs, time tracking, comments, chat, and search via official MCP. OAuth authentication required.
.claude/skills/sundial-org-clickup-mcp/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 32% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 43% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 77% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 133% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 117% | 0% |
Access ClickUp via the official MCP server. Full workspace search, task management, time tracking, comments, chat, and docs.
ClickUp MCP only allows OAuth from allowlisted clients:
bash# Claude Code claude mcp add clickup --transport http https://mcp.clickup.com/mcp # Then /mcp in session to authorize
Use Claude Code to OAuth, then extract token for mcporter:
Step 1: Authorize via Claude Code
bashclaude mcp add clickup --transport http https://mcp.clickup.com/mcp claude # In Claude Code, run: /mcp # Complete OAuth in browser
Step 2: Extract token
bashjq -r '.mcpOAuth | to_entries | .[] | select(.key | startswith("clickup")) | .value.accessToken' ~/.claude/.credentials.json
Step 3: Add to environment
bash# Add to ~/.clawdbot/.env CLICKUP_TOKEN=eyJhbGciOiJkaXIi...
Step 4: Configure mcporter
Add to config/mcporter.json:
json{ "mcpServers": { "clickup": { "baseUrl": "https://mcp.clickup.com/mcp", "description": "Official ClickUp MCP", "headers": { "Authorization": "Bearer ${CLICKUP_TOKEN}" } } } }
Step 5: Test
bashmcporter list clickup mcporter call 'clickup.clickup_search(keywords: "test", count: 3)'
Tokens are long-lived (~10 years). If expired:
/mcp in Claude Code~/.claude/.credentials.jsonCLICKUP_TOKEN in .env| Tool | Description | |------|-------------| | clickup_search | Universal search across tasks, docs, dashboards, chat, files |
| Tool | Description | |------|-------------| | clickup_create_task | Create task with name, description, status, assignees, due date, priority | | clickup_get_task | Get task details (with optional subtasks) | | clickup_update_task | Update any task field | | clickup_attach_task_file | Attach file to task (URL or base64) | | clickup_add_tag_to_task | Add tag to task | | clickup_remove_tag_from_task | Remove tag from task |
| Tool | Description | |------|-------------| | clickup_get_task_comments | Get all comments on task | | clickup_create_task_comment | Add comment (supports @mentions) |
| Tool | Description | |------|-------------| | clickup_start_time_tracking | Start timer on task | | clickup_stop_time_tracking | Stop active timer | | clickup_add_time_entry | Log time manually | | clickup_get_task_time_entries | Get time entries for task | | clickup_get_current_time_entry | Check active timer |
| Tool | Description | |------|-------------| | clickup_get_workspace_hierarchy | Get full structure (Spaces, Folders, Lists) | | clickup_create_list | Create list in Space | | clickup_create_list_in_folder | Create list in Folder | | clickup_get_list | Get list details | | clickup_update_list | Update list settings | | clickup_create_folder | Create folder in Space | | clickup_get_folder | Get folder details | | clickup_update_folder | Update folder settings |
| Tool | Description | |------|-------------| | clickup_get_workspace_members | List all workspace members | | clickup_find_member_by_name | Find member by name/email | | clickup_resolve_assignees | Get user IDs from names |
| Tool | Description | |------|-------------| | clickup_get_chat_channels | List all Chat channels | | clickup_send_chat_message | Send message to channel |
| Tool | Description | |------|-------------| | clickup_create_document | Create new Doc | | clickup_list_document_pages | Get Doc structure | | clickup_get_document_pages | Get page content | | clickup_create_document_page | Add page to Doc | | clickup_update_document_page | Edit page content |
bashmcporter call 'clickup.clickup_search( keywords: "Q4 marketing", count: 10 )'
bashmcporter call 'clickup.clickup_create_task( name: "Review PR #42", list_id: "901506994423", description: "Check the new feature", status: "to do" )'
bashmcporter call 'clickup.clickup_update_task( task_id: "abc123", status: "in progress" )'
bashmcporter call 'clickup.clickup_create_task_comment( task_id: "abc123", comment_text: "@Mark can you review this?" )'
bash# Start timer mcporter call 'clickup.clickup_start_time_tracking( task_id: "abc123", description: "Working on feature" )' # Stop timer mcporter call 'clickup.clickup_stop_time_tracking()' # Log time manually (duration in ms, e.g., 2h = 7200000) mcporter call 'clickup.clickup_add_time_entry( task_id: "abc123", start: "2026-01-06 10:00", duration: "2h", description: "Code review" )'
bashmcporter call 'clickup.clickup_get_workspace_hierarchy(limit: 10)'
bash# List channels mcporter call 'clickup.clickup_get_chat_channels()' # Send message mcporter call 'clickup.clickup_send_chat_message( channel_id: "channel-123", content: "Team standup in 5 minutes!" )'
Other measured skills in the registry, with their headline benchmark lift.