Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Lightweight ClickUp MCP server - 37 tools, token-optimized (95% smaller responses)
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
CLICKUP_API_TOKEN标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"clickup": {
"command": "npx",
"args": [
"-y",
"@cavort-it-systems/clickup-mcp"
],
"env": {
"CLICKUP_API_TOKEN": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add clickup --env CLICKUP_API_TOKEN=your-value -- npx -y @cavort-it-systems/clickup-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"clickup": {
"command": "npx",
"args": [
"-y",
"@cavort-it-systems/clickup-mcp"
],
"env": {
"CLICKUP_API_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"clickup": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cavort-it-systems/clickup-mcp"
],
"env": {
"CLICKUP_API_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 cvrt-jh 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:CLICKUP_API_TOKEN
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.1.0)于31天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Compose Preview Catalogs
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Browse, inspect and render Jetpack Compose Material 3 and Wear component catalogs.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Unmaintained. ClickUp is retired at CAVORT (2026-10-18, cutover to Console complete). This server is kept as is and no longer developed.
Lightweight ClickUp MCP server focused on task management. 40 tools with token-optimized responses - API responses automatically slimmed from thousands of characters to essentials.
ClickUp's API returns extremely verbose JSON. This server strips it down:
| Response | Before | After | Reduction |
|---|---|---|---|
clickup_whoami | ~3,500 chars | ~160 chars | 95% |
clickup_create_comment | ~1,500 chars | ~38 chars | 97% |
Less tokens = faster responses, lower costs, more context for your AI.
npm install -g @cavort-it-systems/clickup-mcp
Or run directly:
npx @cavort-it-systems/clickup-mcp
claude mcp add clickup -e CLICKUP_API_TOKEN=your-token -- npx @cavort-it-systems/clickup-mcp
Add to your MCP config (~/.claude.json or Claude Desktop settings):
{
"mcpServers": { "clickup": { "command": "npx", "args": ["@cavort-it-systems/clickup-mcp"], "env": { "CLICKUP_API_TOKEN": "your-token" } } } }
git clone https://github.com/cvrt-jh/clickup-mcp.git
cd clickup-mcp pnpm install && pnpm build
Then configure with the built path:
claude mcp add clickup -e CLICKUP_API_TOKEN=your-token -- node /path/to/clickup-mcp/build/index.js
Every tool that takes a task_id accepts the custom ID as well (DEV-1217), not only the internal one (86caqr85m). The server adds custom_task_ids=true&team_id=... itself. The workspace id comes from CLICKUP_TEAM_ID, or, if unset, from the token's only workspace (looked up once). A token with access to several workspaces must set CLICKUP_TEAM_ID.
CLICKUP_API_TOKENAll responses are automatically trimmed to save tokens. The ClickUp API returns extremely verbose JSON - this server strips it down to what matters.
`clickup_whoami` - from ~3,500 chars to ~160:
// Before (ClickUp API raw)
{"user":{"id":12345678,"username":"Jane Doe","email":"jane@example.com","color":"#0388d1", "profilePicture":"https://attachments.clickup.com/...","initials":"JD", "week_start_day":1,"global_font_support":true,"timezone":"Europe/Berlin"}, "teams":{"teams":[{"id":"99999999","name":"My Workspace","color":"#40BC86", "avatar":"https://attachments2.clickup.com/...?Expires=...&Key-Pair-Id=...&Signature=...", "members":[{"user":{"id":11111111,"username":"Bob Smith","email":"bob@example.com", "color":"#aa2fff","profilePicture":null,"initials":"BS","role":4,"role_subtype":2, "role_key":"guest","custom_role":null,"last_active":"...","date_joined":"...", "date_invited":"..."},"invited_by":{"id":22222222,...}, "can_see_time_spent":true,...}, ...]}]}}
// After (slimmed) {"id":12345678,"username":"Jane Doe","email":"jane@example.com", "timezone":"Europe/Berlin","workspaces":[{"id":"99999999", "name":"My Workspace","member_count":4}]}
`clickup_create_comment` - from ~1,500 chars to 38:
// Before
{"id":90150191300876,"hist_id":"...","date":1770053982842, "version":{"object_type":"comment","object_id":"...","workspace_id":99999999, "operation":"c","data":{"context":{"root_parent_type":1,"is_chat":false, "audit_context":{"userid":12345678,"current_time":...,"route":"*"},...},...},...}}
// After {"id":90150191300876,"date":1770053982842}
What gets stripped:
| Field | Where | Why |
|---|---|---|
features{} | spaces | ~50 lines of boolean flags per space |
sharing{}, permission_level | tasks | Internal access config, not useful |
watchers[] | tasks | Usually same as assignees |
| Full user objects | everywhere | Reduced to {id, username, email} |
profilePicture, initials, color | users | Visual metadata, not useful for LLMs |
version{} blobs | comment/reply creates | Internal versioning data |
invited_by, profileInfo | members | Invitation metadata |
| Pretty-print JSON | all responses | Compact single-line output |
| Empty arrays | tasks | checklists, dependencies, custom_fields omitted when empty |
clickup_whoami - Current user + workspacesclickup_get_spaces - Spaces in workspaceclickup_get_folders - Folders in spaceclickup_get_lists - Lists in folder or spaceclickup_get_list - Single list detailsclickup_create_list - Create list in folder or spaceclickup_delete_list - Delete a list (permanent)clickup_get_task - Get task by IDclickup_create_task - Create task with all fieldsclickup_update_task - Update any task fieldclickup_get_tasks - List tasks in a listclickup_search_tasks - Search tasks across workspaceclickup_set_custom_field - Set custom field valueclickup_get_space_tags - List space tagsclickup_create_space_tag - Create tagclickup_edit_space_tag - Edit tagclickup_delete_space_tag - Delete tagclickup_add_tag_to_task - Tag a taskclickup_remove_tag_from_task - Untag a taskclickup_create_checklist - Create checklistclickup_edit_checklist - Edit checklistclickup_delete_checklist - Delete checklistclickup_create_checklist_item - Add itemclickup_edit_checklist_item - Edit itemclickup_delete_checklist_item - Delete itemclickup_add_dependency - Add dependencyclickup_delete_dependency - Remove dependencyclickup_add_task_link - Link tasksclickup_delete_task_link - Unlink tasksclickup_create_comment - Add commentclickup_get_comments - Get commentsclickup_update_comment - Edit/resolve commentclickup_create_reply - Threaded replyclickup_get_replies - Get repliesclickup_delete_task - Delete a taskclickup_add_task_to_list - Add a task to an additional list (multi-homing)clickup_remove_task_from_list - Remove a task from an additional listThese do not move a task. The ClickUp v2 API has no move-between-lists
endpoint. Verified against the live API 2026-08-12:
POST /list/{list}/task/{task}
adds a secondary location and leaves the home list unchanged, while a
list_id
in
PUT /task/{id}returns HTTP 200 and is silently ignored. To genuinely move a
task and keep its custom ID and history, use the ClickUp web UI (right-click ->
Move). Multi-list membership also requires the paid Tasks-in-Multiple-Lists feature.
clickup_upload_attachment - Upload a local file (screenshot, PDF) to a taskclickup_get_workspace_members - All workspace membersclickup_get_list_members - List-specific memberssrc/
index.ts # Entry: McpServer + StdioServerTransport client.ts # ClickUp API v2 fetch wrapper types.ts # Shared Zod schemas + jsonResult helper slim.ts # Response slimming transformers tools/ navigation.ts # 7 tools tasks.ts # 9 tools (CRUD + custom fields + delete + multi-list) tags.ts # 6 tools checklists.ts # 6 tools dependencies.ts # 4 tools comments.ts # 5 tools members.ts # 2 tools attachments.ts # 1 tool (multipart upload)
MIT