trello-mcp-server
连接到 Trello,并使用我在 API 参考中找到的所有可用工具。
README
Trello MCP 服务器
一个模型上下文协议 (MCP) 服务器,提供与 Trello API 交互的工具。构建于通用 MCP 服务器模板之上。
功能特性
- Trello 集成: 完整访问 Trello 看板、列表、卡片等
- 全面的 API 覆盖: 支持所有主要的 Trello 操作
- 模块化架构: 清晰的关注点分离,具有良好定义的结构
- 类型安全: 完整的 TypeScript 支持,为 Trello 对象提供正确的类型
- 错误处理: 整个代码库中强大的错误管理
项目结构
trello-mcp-server/
├── src/
│ ├── services/ # 用于 Trello API 交互的服务类
│ │ ├── base-service.ts # 具有通用功能的抽象基类服务
│ │ ├── trello-service.ts # 核心 Trello API 服务
│ │ ├── board-service.ts # 用于 Trello 看板的服务
│ │ ├── list-service.ts # 用于 Trello 列表的服务
│ │ ├── card-service.ts # 用于 Trello 卡片的服务
│ │ ├── member-service.ts # 用于 Trello 成员的服务
│ │ ├── label-service.ts # 用于 Trello 标签的服务
│ │ ├── checklist-service.ts # 用于 Trello 检查清单的服务
│ │ └── service-factory.ts # 用于创建服务实例的工厂
│ ├── tools/ # MCP 工具定义和处理程序
│ │ ├── board-tools.ts # 看板工具定义
│ │ ├── board-tool-handlers.ts # 看板工具处理程序
│ │ ├── list-tools.ts # 列表工具定义
│ │ ├── list-tool-handlers.ts # 列表工具处理程序
│ │ ├── card-tools.ts # 卡片工具定义
│ │ ├── card-tool-handlers.ts # 卡片工具处理程序
│ │ ├── member-tools.ts # 成员工具定义
│ │ ├── member-tool-handlers.ts # 成员工具处理程序
│ │ ├── label-tools.ts # 标签工具定义
│ │ ├── label-tool-handlers.ts # 标签工具处理程序
│ │ ├── checklist-tools.ts # 检查清单工具定义
│ │ ├── checklist-tool-handlers.ts # 检查清单工具处理程序
│ │ ├── trello-tools.ts # 组合工具定义
│ │ └── trello-tool-handlers.ts # 组合工具处理程序
│ ├── types/ # TypeScript 类型定义
│ │ └── trello-types.ts # Trello 类型定义
│ ├── config.ts # 配置管理
│ └── index.ts # 主入口点
├── .env.example # 示例环境变量
├── package.json # 项目依赖和脚本
├── tsconfig.json # TypeScript 配置
└── README.md # 项目文档
快速开始
前提条件
- Node.js 18 或更高版本
- npm 或 yarn
- Trello API 密钥和令牌
安装
-
克隆此存储库:
git clone https://github.com/yourusername/trello-mcp-server.git cd trello-mcp-server -
安装依赖:
npm install -
基于
.env.example创建一个.env文件:cp .env.example .env -
使用您的 Trello API 密钥和令牌编辑
.env文件:TRELLO_API_KEY=your_trello_api_key TRELLO_TOKEN=your_trello_token您可以从 Trello 开发者门户 获取这些信息。
构建和运行
-
构建项目:
npm run build -
运行服务器:
npm start
可用工具
该服务器提供用于与所有主要 Trello 资源交互的工具:
看板工具
get_boards- 获取已验证用户的所有看板get_board- 按 ID 获取特定看板create_board- 创建新看板update_board- 更新现有看板delete_board- 删除看板get_board_lists- 获取看板上的所有列表get_board_members- 获取看板的所有成员get_board_labels- 获取看板上的所有标签close_board- 关闭(归档)看板reopen_board- 重新打开已关闭的看板
列表工具
get_list- 按 ID 获取特定列表create_list- 在看板上创建新列表update_list- 更新现有列表archive_list- 归档列表unarchive_list- 取消归档列表move_list_to_board- 将列表移动到不同的看板get_cards_in_list- 获取列表中的所有卡片archive_all_cards- 归档列表中的所有卡片move_all_cards- 将列表中的所有卡片移动到另一个列表update_list_position- 更新列表在看板上的位置update_list_name- 更新列表的名称subscribe_to_list- 订阅列表
卡片工具
get_card- 按 ID 获取特定卡片create_card- 创建新卡片update_card- 更新现有卡片delete_card- 删除卡片archive_card- 归档卡片unarchive_card- 取消归档卡片move_card_to_list- 将卡片移动到不同的列表add_comment- 向卡片添加评论get_comments- 获取卡片上的评论add_attachment- 向卡片添加附件get_attachments- 获取卡片上的附件delete_attachment- 从卡片中删除附件add_member- 向卡片添加成员remove_member- 从卡片中删除成员add_label- 向卡片添加标签remove_label- 从卡片中删除标签set_due_date- 设置卡片的截止日期set_due_complete- 将卡片的截止日期标记为完成或未完成
成员工具
get_me- 获取已验证的成员(当前用户)get_member- 按 ID 或用户名获取特定成员get_member_boards- 获取成员所属的看板get_member_cards- 获取分配给成员的卡片get_boards_invited- 获取成员已被邀请加入的看板get_member_organizations- 获取成员所属的组织get_notifications- 获取已验证成员的通知update_me- 更新已验证成员的信息get_avatar- 获取已验证成员的头像search_members- 按名称搜索成员get_board_members- 获取看板的成员get_organization_members- 获取组织的成员get_card_members- 获取分配给卡片的成员
标签工具
get_label- 按 ID 获取特定标签create_label- 在看板上创建新标签update_label- 更新现有标签delete_label- 删除标签get_board_labels- 获取看板上的所有标签update_label_name- 更新标签的名称update_label_color- 更新标签的颜色create_label_on_card- 直接在卡片上创建新标签get_card_labels- 获取卡片上的所有标签add_label_to_card- 向卡片添加标签remove_label_from_card- 从卡片中删除标签
检查清单工具
get_checklist- 按 ID 获取特定检查清单create_checklist- 在卡片上创建新检查清单update_checklist- 更新现有检查清单delete_checklist- 删除检查清单get_checkitems- 获取检查清单上的所有检查项create_checkitem- 在检查清单上创建新检查项get_checkitem- 获取检查清单上的特定检查项update_checkitem- 更新检查项delete_checkitem- 从检查清单中删除检查项update_checklist_name- 更新检查清单的名称update_checklist_position- 更新检查清单在卡片上的位置get_checklist_board- 获取检查清单所在的看板get_checklist_card- 获取检查清单所在的卡片update_checkitem_state_on_card- 更新卡片上检查项的状态
配置
服务器在 src/config.ts 中使用集中式配置系统。可以通过以下方式提供配置:
- 环境变量
- 命令行参数 (使用
--env KEY=VALUE) - 代码中的默认值
必需的环境变量:
TRELLO_API_KEY- 您的 Trello API 密钥TRELLO_TOKEN- 您的 Trello API 令牌
错误处理
服务器包含全面的错误处理:
- 具有速率限制支持的服务级别错误处理
- 具有正确错误消息的工具级别错误处理
- MCP 协议错误处理
- Trello API 错误处理
许可证
该项目已获得 MIT 许可证的许可 - 有关详细信息,请参阅 LICENSE 文件。
推荐服务器
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Apple MCP Server
通过 MCP 协议与 Apple 应用(如“信息”、“备忘录”和“通讯录”)进行交互,从而使用自然语言发送消息、搜索和打开应用内容。
Playwright MCP Server
提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。
MCP Server Trello
通过 Trello API 促进与 Trello 看板的交互,提供速率限制、类型安全、输入验证和错误处理等功能,以实现对卡片、列表和看板活动的无缝管理。
@kazuph/mcp-gmail-gas
用于 Gmail 集成的模型上下文协议 (Model Context Protocol, MCP) 服务器。它允许 Claude Desktop(或任何 MCP 客户端)通过 Google Apps Script 与您的 Gmail 帐户进行交互。
MCP DuckDB Knowledge Graph Memory Server
一个为 Claude 设计的记忆服务器,它使用 DuckDB 存储和检索知识图谱数据,从而增强了对话的性能和查询能力,并能持久保存用户信息。
Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。
mcp-pinterest
用于图像搜索和信息检索的 Pinterest 模型上下文协议 (MCP) 服务器
contentful-mcp
在你的 Contentful Space 中更新、创建、删除内容、内容模型和资源。