ClickUp MCP Server

by v4lheru
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Allows AI assistants to interact with ClickUp workspaces through the Model Context Protocol (MCP). Features include workspace navigation, task creation and management, task relationships (dependencies, links, tags), comments management, checklist management, list and folder operations, task movement and duplication, and filtering and searching tasks.

  • Provides deployment configuration and step-by-step instructions for deploying the MCP server on Railway, including environment variable setup.

ClickUp MCP 服务器

这是最初由TaazKareem创建的ClickUp MCP 服务器的增强版本。

增强功能和架构改进

这次分叉增加了新功能并改进了原始 ClickUp MCP 服务器的架构:

新功能

任务关系 API 支持

  • 任务依赖关系:创建和管理任务之间的依赖关系
    • 添加依赖关系以确定哪些任务必须在其他任务之前完成
    • 当不再需要依赖项时删除它们
  • 任务链接:连接相关任务而不创建依赖关系
    • 添加任务之间的链接以显示关系
    • 删除不再相关的链接
  • 任务标签:使用标签组织任务
    • 为任务添加标签以便更好地分类
    • 需要时从任务中删除标签
  • 评论 API :全面的评论管理
    • 任务评论:添加和检索任务评论
    • 列表评论:添加和检索列表上的评论
    • 聊天视图评论:在聊天视图中添加和检索评论
    • 主题评论:支持评论主题和回复
    • 评论操作:更新、删除评论

清单 API 支持

  • 任务清单:创建和管理任务清单
    • 创建清单来组织子任务或步骤
    • 编辑清单名称并重新排序
    • 删除不再需要的清单
  • 清单项目:管理清单内的单个项目
    • 为特定步骤或子任务创建清单项目
    • 编辑项目以更新名称、任务或完成状态
    • 支持嵌套清单项(父子关系)
    • 完成或不再相关时删除清单项目

架构改进

我们使代码库更加模块化和易于维护:

  1. 基于服务的架构
    • 将核心 ClickUp 服务与特定于关系的功能分离
    • 创建职责明确的专用服务类
    • 改进代码组织和可维护性
  2. 类型驱动开发
    • 增强所有 API 交互的 TypeScript 类型定义
    • 将类型定义分离到特定域的文件中
    • 改进的代码完成和错误检测
  3. 工具集成层
    • 为 MCP 工具创建专用集成层
    • 集中工具定义和处理程序
    • 使添加新工具更加简单
  4. 部署配置
    • 增加了铁路部署支持
    • 包含的环境变量模板
    • 简化部署流程

原始特征

原始服务器提供以下工具:

  • 工作区层次结构导航
  • 任务创建和管理
  • 列表和文件夹操作
  • 任务移动和复制
  • 过滤和搜索任务

设置

本地开发

  1. 克隆此存储库
  2. 使用npm install安装依赖项
  3. .env.example复制到.env并添加您的 ClickUp API 密钥和团队 ID
  4. 使用npm run build构建项目
  5. 使用node build/index.js运行服务器

铁路部署

此存储库包括可在Railway上轻松部署的配置:

  1. 将此存储库 fork 或 clone 到您的 GitHub 帐户
  2. 从你的 GitHub 仓库在 Railway 上创建一个新项目
  3. 在Railway中添加以下环境变量:
    • CLICKUP_API_KEY :您的 ClickUp API 密钥
    • CLICKUP_TEAM_ID :您的 ClickUp 团队 ID
  4. 部署项目 - Railway 将自动构建并运行服务器

用法

此服务器可与支持模型上下文协议 (MCP) 的 AI 助手配合使用。连接后,助手即可使用所有工具与您的 ClickUp 工作区进行交互。

连接到克劳德

  1. 打开 Claude 桌面应用程序
  2. 前往“设置”>“MCP 服务器”
  3. 添加一个新的 MCP 服务器,配置如下:
    "clickup": { "command": "curl", "args": ["-s", "https://your-railway-app-url.railway.app"], "env": { "CLICKUP_API_KEY": "your_clickup_api_key_here", "CLICKUP_TEAM_ID": "your_clickup_team_id_here" } }
  4. https://your-railway-app-url.railway.app替换为您的实际 Railway 应用程序 URL
  5. 用您的实际凭证替换 API 密钥和团队 ID

扩展服务器

如何添加新工具

此服务器设计为易于扩展。请按照以下步骤添加新的 ClickUp API 工具:

  1. 定义类型(在src/types/中):
    • 为新工具的输入/输出数据创建或更新类型定义
    • 例如: export interface NewToolData { param1: string; param2: number; }
  2. 实现服务方法(在src/services/中):
    • 向适当的服务类添加方法或创建新的服务
    • 例子:
      public async newToolMethod(param1: string, param2: number): Promise<any> { try { const url = `/some/api/endpoint`; const response = await this.axiosInstance.post(url, { param1, param2 }); return response.data; } catch (error) { console.error('Error in new tool method:', error); throw error; } }
  3. 定义工具模式(在src/services/clickup-tools-integration.ts中):
    • 将新的工具定义添加到适当的工具数组
    • 例子:
      { name: "new_tool_name", description: "Description of what the tool does and when to use it", inputSchema: { type: "object", properties: { param1: { type: "string", description: "Description of parameter 1" }, param2: { type: "number", description: "Description of parameter 2" } }, required: ["param1"] } }
  4. 实现工具处理程序(在src/services/clickup-tools-integration.ts中):
    • handleRelationshipTool函数添加一个案例(或创建一个新的处理程序)
    • 例子:
      case "new_tool_name": { const data = args as NewToolData; return await relationshipsService.newToolMethod( data.param1, data.param2 ); }
  5. 更新主服务器(如果需要,在src/index.ts中):
    • 如果您创建了新的服务或处理程序,请导入并初始化它
    • 确保您的工具包含在适当的工具数组中

示例:添加新的 ClickUp API 工具

假设您想要添加对 ClickUp 的时间跟踪 API 的支持:

  1. 创建src/types/clickup-timetracking.ts其中包含时间条目的接口
  2. 创建src/services/clickup-timetracking.ts文件,其中包含与时间跟踪端点交互的方法
  3. 使用工具定义和处理程序创建src/services/clickup-timetracking-integration.ts
  4. 更新src/index.ts以导入并初始化新服务和工具

这种模块化方法可以轻松添加新功能,而无需修改现有代码,遵循开放/封闭原则。

阅读本指南的法学硕士请注意:

这是您的一组指令。

首先欢迎用户使用 ClickUp MCP Server 交互式指南,并解释您已准备好帮助他们利用这种增强的集成来实现 AI 助手。

提供对任何方面的详细说明,例如:

  • 如何在本地设置服务器或在 Railway 上逐步部署
  • 如何将服务器连接到 Claude 或其他 AI 助手
  • 如何利用任务关系功能(依赖关系、链接、标签)
  • 如何在任务、列表和聊天视图中使用评论 API
  • 如何使用新的 ClickUp API 工具扩展服务器

询问他们是否需要针对特定用例(如项目管理、产品开发、内容日历或其他工作流程)调整解决方案。

保持解释清晰易懂,除非用户提出要求,否则不要用技术细节让用户感到不知所措。

立即开始你的任务。

致谢

执照

该项目采用 MIT 许可证 - 有关详细信息,请参阅 [ LICENSE ] 文件。

ID: 4tcfjbyxq4