使用说明
Trello MCP服务器
一种模型上下文协议(MCP)服务器,提供与Trello API交互的工具。基于通用MCP服务器模板构建。
特性
- Trello集成:完全访问Trello板、列表、卡片等
- API全面覆盖:支持Trello的所有主要业务
- 模块化架构:以明确界定的结构明确区分关注点
- 类型安全:完全支持TypeScript,为Trello对象提供正确的类型
- 错误处理:在整个代码库中进行强大的错误管理
项目结构
trello-mcp-server/
├── src/
│ ├── services/ # Service classes for Trello API interactions
│ │ ├── base-service.ts # Abstract base service with common functionality
│ │ ├── trello-service.ts # Core Trello API service
│ │ ├── board-service.ts # Service for Trello boards
│ │ ├── list-service.ts # Service for Trello lists
│ │ ├── card-service.ts # Service for Trello cards
│ │ ├── member-service.ts # Service for Trello members
│ │ ├── label-service.ts # Service for Trello labels
│ │ ├── checklist-service.ts # Service for Trello checklists
│ │ └── service-factory.ts # Factory for creating service instances
│ ├── tools/ # MCP tool definitions and handlers
│ │ ├── board-tools.ts # Board tool definitions
│ │ ├── board-tool-handlers.ts # Board tool handlers
│ │ ├── list-tools.ts # List tool definitions
│ │ ├── list-tool-handlers.ts # List tool handlers
│ │ ├── card-tools.ts # Card tool definitions
│ │ ├── card-tool-handlers.ts # Card tool handlers
│ │ ├── member-tools.ts # Member tool definitions
│ │ ├── member-tool-handlers.ts # Member tool handlers
│ │ ├── label-tools.ts # Label tool definitions
│ │ ├── label-tool-handlers.ts # Label tool handlers
│ │ ├── checklist-tools.ts # Checklist tool definitions
│ │ ├── checklist-tool-handlers.ts # Checklist tool handlers
│ │ ├── trello-tools.ts # Combined tool definitions
│ │ └── trello-tool-handlers.ts # Combined tool handlers
│ ├── types/ # TypeScript type definitions
│ │ └── trello-types.ts # Trello type definitions
│ ├── config.ts # Configuration management
│ └── index.ts # Main entry point
├── .env.example # Example environment variables
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # Project documentation
入门指南
先决条件
- Node.js 18或更高版本
- npm或纱线
- Trello API密钥和令牌
安装
-
克隆此存储库:
git clone https://github.com/yourusername/trello-mcp-server.git cd trello-mcp-server -
安装依赖项:
npm install -
创建一个
.env文件基于.env.example:cp .env.example .env -
编辑
.env使用您的Trello API密钥和令牌进行文件: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许可证获得许可-请参阅 许可证 文件以获取详细信息。
