项目简介

Teamwork MCP Server 是一款基于 Model Context Protocol (MCP) 构建的服务器,旨在简化与 Teamwork 项目管理工具的集成。它允许 LLM 客户端通过标准化的 MCP 协议,安全、可扩展地访问和操作 Teamwork 中的项目、任务、人员和时间等资源。

主要功能点

  • 连接 Teamwork API: 无缝连接到 Teamwork 平台,作为 LLM 应用与 Teamwork 之间的桥梁。
  • 资源访问: 提供多种工具,支持 LLM 客户端获取 Teamwork 中的项目、任务、任务列表、人员、时间条目和报告等信息。
  • 任务管理: 支持创建、更新和删除 Teamwork 中的任务和子任务,方便 LLM 驱动的工作流自动化。
  • 人员管理: 允许 LLM 客户端获取项目人员信息,以及向项目添加人员。
  • 报表生成: 支持生成用户任务完成度和利用率报告,以多种格式(CSV、HTML)返回。
  • 工具过滤: 支持通过白名单和黑名单机制灵活控制暴露给 LLM 客户端的工具,增强安全性。
  • 配置灵活: 支持通过环境变量、'.env' 文件或命令行参数配置 Teamwork API 凭据和服务器行为。
  • NPX 快速启动: 推荐使用 NPX 快速启动服务器,简化部署流程。
  • MCP 客户端集成: 专为 Cursor 等 MCP 客户端设计,提供开箱即用的集成方案。

安装步骤

  1. 克隆仓库

    git clone https://github.com/Vizioz/Teamwork-MCP.git
    cd Teamwork-MCP
  2. 安装依赖

    npm install
  3. 配置环境变量

    • 复制 '.env.example' 文件为 '.env',并根据需要修改以下配置:

      PORT=3000
      NODE_ENV=development
      LOG_LEVEL=info
      TEAMWORK_DOMAIN=your-company  # 您的 Teamwork 域名,例如 "your-company"
      [email protected] # 您的 Teamwork 用户名 (邮箱)
      TEAMWORK_PASSWORD=your-password # 您的 Teamwork 密码
    • 您也可以选择使用环境变量命令行参数来设置 Teamwork 凭据。

服务器配置 (MCP 客户端)

以下是配置 Teamwork MCP Server 以便 Cursor 等 MCP 客户端连接的 JSON 格式配置信息。您需要在 MCP 客户端中添加新的 MCP 服务器,并填写以下信息:

{
  "Teamwork": {  // 服务器名称,可自定义
    "command": "npx", // 启动命令,使用 npx 运行
    "args": [ // 启动参数
      "-y",
      "teamwork-mcp", // 运行 teamwork-mcp 包
      "--domain", // Teamwork 域名参数
      "yourdomain", // 替换为您的 Teamwork 域名
      "--user", // Teamwork 用户名参数
      "[email protected]", // 替换为您的 Teamwork 用户名
      "--pass" // Teamwork 密码参数
      "yourPassword" // 替换为您的 Teamwork 密码
    ]
  }
}

参数注释:

  • '"Teamwork"': MCP 服务器的名称,在 MCP 客户端中显示,可以自定义。
  • '"command": "npx"': 指定用于启动 MCP 服务器的命令为 'npx',它用于运行 npm 包。
  • '"args": [...]"': 一个字符串数组,包含传递给 'npx' 命令的参数:
    • '"-y"': (可选) 'npx' 参数,自动确认执行包。
    • '"teamwork-mcp"': 指定要运行的 npm 包为 'teamwork-mcp',前提是您已经通过 'npm install' 安装了该包或者使用 'npx' 直接运行。
    • '"--domain", "yourdomain"': 指定 Teamwork 域名,替换 '"yourdomain"' 为您的实际 Teamwork 域名 (例如,'your-company')。
    • '"--user", "[email protected]"': 指定 Teamwork 用户名,替换 '"[email protected]"' 为您的 Teamwork 用户名 (邮箱)。
    • '"--pass", "yourPassword"': 指定 Teamwork 密码,替换 '"yourPassword"' 为您的 Teamwork 密码。

注意:

  • 请根据您的实际 Teamwork 域名、用户名和密码替换配置中的占位符 '"yourdomain"', '"[email protected]"', 和 '"yourPassword"'。
  • 您还可以根据需要在 '"args"' 数组中添加其他命令行参数,例如工具过滤参数 '--allow' 或 '--deny'。
  • '"transport": "stdio"': (隐式) 此配置默认使用 'stdio' 传输协议,无需显式指定。

基本使用方法

  1. 启动服务器

    推荐使用 NPX 启动服务器,无需构建:

    npx teamwork-mcp --domain=your-company [email protected] --pass=your-password

    或者,如果您已经构建了应用程序:

    node build/index.js --domain=your-company [email protected] --pass=your-password

    请替换 '--domain', '--user', '--pass' 参数为您的 Teamwork 凭据。

  2. 添加到 MCP 客户端

    例如,在 Cursor 中,按照 “服务器配置 (MCP 客户端)” 章节的 JSON 配置信息,将 Teamwork MCP Server 添加到 Cursor 的 MCP 服务器列表中。

  3. 在 LLM 应用中使用工具

    配置完成后,您就可以在 Cursor 等 MCP 客户端的 LLM Agent 中使用 Teamwork MCP Server 提供的工具,例如在 Composer 中调用 'getProjects' 工具来获取 Teamwork 项目列表。

信息

分类

生产力应用