README
🚀 MCP 服务器 Trello
MCP 服务器 Trello 是一个模型上下文协议(MCP)服务器,它提供了与 Trello 董事会交互的工具。该服务器在处理速率限制、类型安全和错误处理方面表现出色,能够实现与 Trello API 的无缝集成。
🚀 快速开始
MCP 服务器 Trello 为开发者提供了便捷的方式与 Trello 董事会进行交互,以下是快速上手的步骤。
✨ 主要特性
- 完整的 Trello 董事会集成:可与卡片、列表和董事会活动进行交互。
- 内置速率限制:严格遵守 Trello 的 API 限制(每个 API 密钥每 10 秒 300 个请求,每个令牌每 10 秒 100 个请求)。
- 类型安全实现:使用 TypeScript 编写,具备全面的类型定义。
- 输入验证:对所有 API 输入进行健壮验证。
- 错误处理:拥有优雅的错误处理机制和详细的错误消息。
📦 安装指南
安装依赖
npm install @modelcontextprotocol/mcp-server-trello
配置服务器
将服务器添加到您的 MCP 设置文件中,示例如下:
{
"mcpServers": {
"trello": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-trello"],
"env": {
"TRELLO_API_KEY": "your-api-key",
"TRELLO_TOKEN": "your-token",
"TRELLO_BOARD_ID": "your-board-id"
}
}
}
}
必要的环境变量
TRELLO_API_KEY:您的 Trello API 密钥(可从 https://trello.com/app-key 获取)。TRELLO_TOKEN:您的 Trello 令牌(使用 API 密钥生成)。TRELLO_BOARD_ID:要交互的 Trello 董事会 ID(在董事会 URL 中找到)。
💻 使用示例
基础用法
get_cards_by_list_id
根据列表 ID 获取所有卡片。
{
name: 'get_cards_by_list_id',
arguments: {
listId: string // 列表 ID
}
}
get_lists
检索配置的董事会中的所有列表。
{
name: 'get_lists',
arguments: {}
}
get_recent_activity
获取董事会上的最近活动。
{
name: 'get_recent_activity',
arguments: {
limit?: number // 可选:要获取的活动数量(默认值:10)
}
}
add_card_to_list
将新卡片添加到指定列表中。
{
name: 'add_card_to_list',
arguments: {
listId: string, // 要添加卡片的列表 ID
name: string, // 卡片名称
description?: string, // 可选:卡片描述
due?: Date, // 可选:截止日期
labels?: string[] // 可选:标签 ID 数组
}
}
add_comment_to_card
在指定卡片下添加评论。
{
name: 'add_comment_to_card',
arguments: {
cardId: string, // 卡片 ID
text: string // 评论文本
}
}
📚 详细文档
速率限制
默认情况下,Trello API 的免费层限制为:
- 每分钟 20 个请求。
- 每小时 1000 个请求。 如果您需要更高的速率限制,请考虑升级到付费计划。
错误处理
所有 API 调用都会返回一个包含以下字段的对象:
{
success: boolean, // 表示操作是否成功的布尔值
data?: any, // 成功时的响应数据
error?: {
message: string // 错误消息
}
}
开发步骤
克隆仓库
git clone https://github.com/modelcontextprotocol/server-trello.git
cd server-trello
安装依赖项
npm install
构建项目
npm run build
运行测试
npm test
贡献
欢迎贡献!请阅读我们的贡献指南以了解代码规范和提交拉取请求的过程。
📄 许可证
此项目根据 MIT 许可证分发 - 有关详细信息,请参阅LICENSE文件。
Scan to join WeChat group