Skip to main content
Glama

Teamwork MCP

团队合作 MCP

连接到 Teamwork API 的 MCP 服务器,提供与 Teamwork 项目和任务交互的简化界面。

特征

  • 连接到团队合作 API
  • 检索项目和任务
  • 创建、更新和删除任务
  • RESTful API 端点
  • 错误处理和日志记录
  • MCP 服务器用于与 Cursor 和其他应用程序集成

先决条件

  • Node.js(v14.17 或更高版本,建议 18+ 或更好的最新 LTS 版本)
  • npm 或 yarn
  • 具有 API 访问权限的团队帐户

可用的 Teamwork MCP 工具

可通过 MCP 服务器使用以下工具:

项目工具

  • getProjects - 获取 Teamwork 中的所有项目
  • getCurrentProject - 获取当前项目的详细信息
  • createProject在 Teamwork 中创建新项目

任务工具

  • getTasks - 获取 Teamwork 中的所有任务
  • getTasksByProjectId - 获取 Teamwork 中特定项目的所有任务
  • getTaskListsByProjectId - 获取 Teamwork 中特定项目的所有任务列表
  • getTasksByTaskListId - 从 Teamwork 获取特定任务列表 ID 的所有任务
  • getTaskById - 从 Teamwork 中通过 ID 获取特定任务
  • createTask - 在 Teamwork 中创建新任务
  • createSubTask - 在 Teamwork 中的父任务下创建新的子任务
  • updateTask - 更新 Teamwork 中的现有任务
  • deleteTask从团队工作中删除任务
  • getTasksMetricsComplete - 获取 Teamwork 中已完成任务的总数
  • getTasksMetricsLate - 获取 Teamwork 中延迟任务的总数
  • getTaskSubtasks - 获取 Teamwork 中特定任务的所有子任务
  • getTaskComments - 从 Teamwork 获取特定任务的评论

评论工具

  • createComment - 创建与任务/消息/笔记本相关的评论

公司工具

  • getCompanies - 通过可选的筛选功能获取 Teamwork 中的所有公司
  • getCompanyById - 通过 ID 获取特定公司
  • createCompany - 在 Teamwork 中创建新公司
  • updateCompany - 更新现有公司的信息
  • deleteCompany从 Teamwork 中删除一家公司

人员工具

  • getPeople - 获取 Teamwork 中的所有人员
  • getPersonById - 从 Teamwork 中通过 ID 获取特定人员
  • getProjectPeople - 从 Teamwork 获取分配到特定项目的所有人员
  • addPeopleToProject - 在 Teamwork 中将人员添加到特定项目
  • deletePerson从团队中删除一个人
  • updatePerson - 更新个人信息(时区、姓名、电子邮件等)
  • getProjectsPeopleMetricsPerformance - 获取人员指标绩效
  • getProjectsPeopleUtilization - 获取人员利用率
  • getProjectPerson - 获取项目中的特定人员

报告工具

  • getProjectsReportingUserTaskCompletion - 获取用户任务完成情况报告
  • getProjectsReportingUtilization - 获取各种格式的利用率报告 CSV 和 HTML

时间工具

  • getTime - 获取所有时间条目
  • getProjectsAllocationsTime - 获取项目分配时间
  • getTimezones - 获取 Teamwork 中所有可用的时区(更新用户时区时有用)

安装

  1. 克隆存储库:
    git clone https://github.com/readingdancer/teamwork-mcp.git cd teamwork-mcp
  2. 依赖项:
    npm install
  3. 基于.env.example文件创建.env文件:
    cp .env.example .env
  4. 使用您的 Teamwork 凭证更新.env文件。

配置

编辑.env文件来配置应用程序:

  • PORT :服务器运行的端口(默认值:3000)
  • NODE_ENV :环境(开发、生产、测试)
  • LOG_LEVEL :日志级别(信息、错误、调试)
  • TEAMWORK_DOMAIN :您的 Teamwork 域名(例如, https://your-company.teamwork.com的域名为“your-company”)
  • TEAMWORK_USERNAME :您的 Teamwork 用户名(电子邮件)
  • TEAMWORK_PASSWORD :您的团队密码

设置凭证

您可以通过三种方式提供您的团队合作凭证:

  1. 环境变量:在您的环境中设置TEAMWORK_DOMAINTEAMWORK_USERNAMETEAMWORK_PASSWORD
  2. .env 文件:创建一个包含所需变量的.env文件,如上所示。
  3. 命令行参数:运行应用程序时传递凭据:
node build/index.js --teamwork-domain=your-company --teamwork-username=your-email@example.com --teamwork-password=your-password

或者使用缩写形式:

node build/index.js --domain=your-company --user=your-email@example.com --pass=your-password

工具过滤

您可以使用以下命令行参数控制 MCP 服务器可用的工具:

  1. 允许列表:仅公开特定工具:
    node build/index.js --allow-tools=getProjects,getTasks,getTaskById
    或者使用缩写形式:
    node build/index.js --allow=getProjects,getTasks,getTaskById
  2. 拒绝列表:公开除指定工具之外的所有工具:
    node build/index.js --deny-tools=deleteTask,updateTask
    或者使用缩写形式:
    node build/index.js --deny=deleteTask,updateTask

使用组进行工具过滤

您现在可以指定工具组进行筛选,从而更灵活地控制 MCP 服务器可用的工具。可用的工具组包括:

  • 项目:包括所有与项目相关的工具。
  • 任务:包括所有与任务相关的工具。
  • 人员:包括所有与人员相关的工具。
  • 报告:包括所有与报告相关的工具。
  • 时间:包括所有与时间相关的工具。
  • 评论:包括特定的评论工具。

在工具过滤中使用组

您可以在允许列表或拒绝列表中指定这些组,以包含或排除组内的所有工具。例如:

  1. 允许组列表:仅公开特定组的工具:
    node build/index.js --allow-tools=Tasks,People
    或者使用缩写形式:
    node build/index.js --allow=Tasks,People
  2. 拒绝组列表:公开除指定组中的工具之外的所有工具:
    node build/index.js --deny-tools=Reporting,Time
    或者使用缩写形式:
    node build/index.js --deny=Reporting,Time

默认情况下,如果未提供允许列表或拒绝列表,则所有工具都会公开。如果同时提供允许列表和拒绝列表,则允许列表优先。

为了增强安全性,工具过滤在两个级别强制执行:

  1. 列出可用工具时(不在允许列表或拒绝列表中的工具将不可见)
  2. 执行工具调用时(尝试调用已过滤的工具将被拒绝并出现错误)

设置你的团队合作项目

要将当前解决方案与 Teamwork 项目关联,您可以使用以下方法:

使用配置文件

您可以在项目根目录中创建一个具有以下结构的.teamwork文件:

PROJECT_ID = YourTeamworkProjectID

这个简单的配置文件将您的解决方案与特定的团队合作项目关联起来,我们将来可能会使用它来存储更多详细信息。

配置完成后,MCP 将能够找到您的团队合作项目并将其与您当前的解决方案关联起来,从而减少获取与您正在处理的解决方案相关的项目和任务所需的 API 调用次数。

用法

使用 NPX(推荐)

使用 Teamwork MCP 最简单的方法是使用 npx:

npx teamwork-mcp

您还可以传递配置选项:

npx teamwork-mcp --domain=your-company --user=your-email@example.com --pass=your-password

构建应用程序

注意:如果您只想使用 MCP,则不需要这样做,请使用上面的 NPX 说明。

构建应用程序:

npm run build

这将编译 TypeScript 代码,以便将其用作 MCP 服务器

作为 MCP 服务器运行

要作为 MCP 服务器运行以便与 Cursor 和其他应用程序集成,如果您使用 .env 文件作为您的用户名、密码和 url,或者您已将它们保存在环境变量中:

注意:不要忘记根据保存存储库的位置更改驱动器和路径详细信息。

node C:/your-full-path/build/index.js

或者您可以使用行参数传递它们:

node C:/your-full-path/build/index.js --teamwork-domain=your-company --teamwork-username=your-email@example.com --teamwork-password=your-password

您也可以使用缩写形式:

node C:/your-full-path/build/index.js --domain=your-company --user=your-email@example.com --pass=your-password

使用 MCP 检查器

运行 MCP 检查器进行调试:

npm run inspector

添加到 Cursor(和其他 MCP 客户端)

要将此 MCP 服务器添加到 Cursor:

0.47 之前的版本

  1. 打开“光标设置”>“功能”>“MCP”
  2. 点击“+ 添加新的 MCP 服务器”
  3. 输入服务器的名称(例如“Teamwork API”)
  4. 选择“stdio”作为传输类型
  5. 输入运行服务器的命令: npx @vizioz/teamwork-mcp并添加如上所述的凭据和域命令行参数。
    • 您可以包含工具过滤选项: --allow=getProjects,getTasks--deny=deleteTask
  6. 点击“添加”

0.47 之后的版本(手动编辑配置)

"Teamwork": { "command": "npx", "args": [ "-y", "@vizioz/teamwork-mcp", "--domain", "yourdomain", "--user", "youruser@yourdomain.com", "--pass", "yourPassword" ] }

如果您想添加上面提到的允许或拒绝参数,您只需像这样添加它们,您可以添加上面给出的任何示例,您还可以添加组和单个工具,如下所示:

"Teamwork": { "command": "npx", "args": [ "-y", "@vizioz/teamwork-mcp", "--domain", "yourdomain", "--user", "youruser@yourdomain.com", "--pass", "yourPassword", "--allow", "Tasks,Projects", "--deny", "getProjectsPeopleMetricsPerformance,getProjectsPeopleUtilization" ]

Teamwork MCP 工具现在可供 Composer 中的 Cursor Agent 使用。

执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

免责声明

该项目与 Teamwork.com 无任何关联,亦未获得其认可或赞助。软件包名称 (@vizioz/teamwork-mcp) 中使用“Teamwork”一词仅出于描述目的,以表明其与 Teamwork.com API 兼容。

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    MCP Server for the GitLab API, enabling project management, file operations, and more.
    Last updated -
    1,673
    68,255
    MIT License
    • Linux
    • Apple
  • -
    security
    A
    license
    -
    quality
    MCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.
    Last updated -
    1
    4
    MIT License
  • -
    security
    A
    license
    -
    quality
    MCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.
    Last updated -
    0
    3
    MIT License

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vizioz/Teamwork-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server