Model Context Protocol server for interacting with ClickUp API, providing tools for managing teams, spaces, folders, lists, tasks, and documents
ClickUp MCP has 29 tools with consistent naming (verb_noun pattern) and basic schemas. However, parameter descriptions are sparse or missing entirely. Most tools lack output schema documentation. Error handling is minimal, no recovery guidance or actionable error messages. Descriptions average ~60 chars, below the 194-char baseline for A+ tools. Tool composition is sound (single responsibility), but parameter constraints (enums, ranges) are largely absent. Security: API key properly injected via environment variable. No tool annotations (readOnlyHint/destructiveHint) despite clear risk stratification in the tool list.
Creates multiple tasks in ClickUp
Deletes multiple tasks in ClickUp by iterating through IDs
Updates multiple tasks in ClickUp by iterating through task update objects
Creates a new document
Creates a new folder in a space
Creates a new folder from a template
Creates a new list in a folder
Output schemas not documented. Tools return data but LLMs cannot predict field structure, forcing trial-and-error parsing. Breaks tool chaining (e.g., get-teams returns team_id but downstream tools may not know to extract it).
Parameter descriptions missing or trivial. 'Space color' does not explain format (hex, RGB, name?). 'Features object' lacks structure. LLMs cannot validate input without explicit constraints.
No enum constraints on categorical parameters. 'status' (update-task), 'priority' (create-task), 'archived' (create-folder-from-template) accept free-form strings. LLMs hallucinate invalid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Create a new page in a document
Creates a new space in a team
Creates a new task
Deletes a folder
Deletes a space
Deletes a task
Edit an existing page in a document
Get doc pages
Get a document by ID
Gets a single folder by ID
Gets all folders in a space
Gets all lists in a folder
Get a specific page from a document
Gets a single space by ID
Gets all spaces in a team
Gets a single task by ID
Gets all tasks in a list
Gets all teams accessible to the authenticated user
Search for docs in a workspace
Updates an existing folder
Updates an existing space
Updates an existing task
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Tools are risk-stratified (READ_ONLY, WRITE, DESTRUCTIVE) but this metadata is not exposed to the MCP client, preventing safety guardrails.
Error handling absent. No recovery guidance, no actionable error messages. If API returns 404 or 400, LLM receives raw error text with no next-step guidance.