Server has 4 tools with explicit schemas and descriptions, but quality is inconsistent. Tool naming follows verb_noun convention (good). However, descriptions are minimal (10-50 chars), parameter descriptions lack detail, and output schemas are not documented. clickup_create_task has the most complete schema with enums for priority; others are sparse. No error handling guidance, no pagination support despite list operations, and no indication of which tools modify state. Schemas are present but lack depth, many parameters have generic descriptions like 'List ID to get custom fields for' without format/constraint guidance.
Create a new task/story in ClickUp
Get custom fields for a list
Get all lists in a space or folder
Get all spaces in the team
Output schemas not documented. Tools return TextContent with unstructured text (e.g., 'Available Lists:\n- name (ID: id)') instead of structured JSON. LLMs cannot parse or chain results reliably.
Parameter descriptions lack actionable constraints. 'List ID to get lists from' does not explain format, length, or how to obtain one. 'Task title' lacks length limits. LLMs cannot validate inputs before calling.
No error handling guidance. Code calls response.raise_for_status() but returns no recovery hints. If API returns 404 or 400, LLM receives raw exception with no actionable next step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
No pagination support. clickup_get_lists and clickup_get_spaces return all results without limit or offset. Large workspaces will blow context window and waste tokens.
Tool descriptions do not indicate state modification. clickup_create_task modifies state but description lacks 'Creates' or 'Adds' language. Agents cannot determine retry safety.