关于 Trello MCP Server
Trello MCP Server 是一个用于通过 AI Host 操作 Trello 看板、列表和卡片的 MCP 服务。它支持 SSE 与 Claude Desktop 两种运行方式,并可通过 Docker Compose 部署。
主要功能
- 01读取看板、列表和卡片信息
- 02创建、更新和归档列表
- 03创建、更新和删除卡片
- 04管理卡片中的检查清单及检查项
- 05支持 Claude 应用模式与 SSE 模式
- 06提供 Docker Compose 部署方式
适用场景
- 01通过 Claude Desktop 查询 Trello 看板内容
- 02在 Cursor 等客户端中批量管理卡片
- 03用自然语言在指定列表中新建任务卡片
MCP 相关
该项目作为 MCP 服务运行,向 Claude Desktop、Cursor 等 MCP 客户端暴露 Trello 相关操作。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Trello MCP 服务
一个功能强大的 MCP 服务,可通过 AI Hosts 与 Trello 看板、列表和卡片进行交互。
目录
前置条件
- Python 3.12 或更高版本,可通过
uv轻松管理 - 已安装 Claude for Desktop
- Trello 账户和 API 凭据
- 已安装 uv 包管理器
安装前准备
- 确保已安装 Claude 桌面应用
- 确保已在 Claude 中登录账户。
- 启动 Claude
安装
-
设置 Trello API 凭据:
- 前往 Trello Apps Administration
- 在 New Power-Up or Integration 创建新的集成
- 填写信息(可以将 Iframe connector URL 留空),并确保选择了正确的 Workspace
- 点击应用图标,然后在左侧边栏中打开“API key”。
- 复制“API key”,然后在右侧找到“you can manually generate a Token.”,点击 token 一词以获取 Trello Token。
-
将项目根目录中的
.env.example文件重命名为.env,并设置刚获取的变量:
TRELLO_API_KEY=your_api_key_here
TRELLO_TOKEN=your_token_here
- 如果尚未安装 uv,请先安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
- 克隆此代码库:
git clone https://github.com/m0xai/trello-mcp-server.git
cd trello-mcp-server
- 安装依赖,并使用 uv 为 Claude 设置服务:
uv run mcp install main.py
- 重启 Claude 桌面应用
服务模式
此 MCP 服务可以通过两种不同模式运行:
Claude 应用模式
此模式可直接与 Claude 桌面应用集成:
- 在
.env文件中设置USE_CLAUDE_APP=true(这是默认值) - 使用以下命令运行服务:
uv run mcp install main.py
- 重启 Claude 桌面应用
SSE 服务模式
此模式以独立 SSE 服务的形式运行,可与任何兼容 MCP 的客户端(包括 Cursor)配合使用:
- 在
.env文件中设置USE_CLAUDE_APP=false - 使用以下命令运行服务:
python main.py
- 默认情况下,服务将在
http://localhost:8000上运行(也可使用配置的端口)
Docker 模式
你也可以使用 Docker Compose 运行服务:
- 确保已安装 Docker 和 Docker Compose
- 创建包含配置的
.env文件 - 构建并启动容器:
docker-compose up -d
- 服务默认以 SSE 模式运行
- 查看日志:
docker-compose logs -f
- 停止服务:
docker-compose down
配置
可以使用 .env 文件中的环境变量配置服务:
| 变量 | 描述 | 默认值 |
|---|---|---|
| TRELLO_API_KEY | Trello API 密钥 | 必填 |
| TRELLO_TOKEN | Trello API 令牌 | 必填 |
| MCP_SERVER_NAME | MCP 服务的名称 | Trello MCP Server |
| MCP_SERVER_HOST | SSE 模式的主机地址 | 0.0.0.0 |
| MCP_SERVER_PORT | SSE 模式的端口 | 8000 |
| USE_CLAUDE_APP | 是否使用 Claude 应用模式 | true |
你可以通过编辑 .env 文件中的这些值自定义服务。
客户端集成
与 Claude Desktop 配合使用
- 以 Claude 应用模式运行服务(
USE_CLAUDE_APP=true) - 启动或重启 Claude Desktop
- Claude 会自动检测并连接到 MCP 服务
与 Cursor 配合使用
要将 MCP 服务连接到 Cursor:
- 以 SSE 模式运行服务(
USE_CLAUDE_APP=false) - 在 Cursor 中,前往 Settings(齿轮图标)> AI > Model Context Protocol
- 使用 URL
http://localhost:8000(或你配置的主机/端口)添加新服务 - 使用 Cursor 的 AI 功能时,选择该服务
你也可以将此配置添加到 Cursor 设置 JSON 文件中(通常位于 ~/.cursor/mcp.json):
{
"mcpServers": {
"trello": {
"url": "http://localhost:8000/sse"
}
}
}
与其他 MCP 客户端配合使用
对于其他兼容 MCP 的客户端,请将其指向 SSE 端点 http://localhost:8000。
最小客户端示例
以下是连接到 SSE 端点的最小 Python 示例:
import asyncio
import httpx
async def connect_to_mcp_server():
url = "http://localhost:8000/sse"
headers = {"Accept": "text/event-stream"}
async with httpx.AsyncClient() as client:
async with client.stream("GET", url, headers=headers) as response:
# Get the session ID from the first SSE message
session_id = None
async for line in response.aiter_lines():
if line.startswith("data:"):
data = line[5:].strip()
if "session_id=" in data and not session_id:
session_id = data.split("session_id=")[1]
# Send a message using the session ID
message_url = f"http://localhost:8000/messages/?session_id={session_id}"
message = {
"role": "user",
"content": {
"type": "text",
"text": "Show me my Trello boards"
}
}
await client.post(message_url, json=message)
if __name__ == "__main__":
asyncio.run(connect_to_mcp_server())
功能
| 操作 | 看板 | 列表 | 卡片 | 检查清单 | 检查清单项目 |
|---|---|---|---|---|---|
| 读取 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 写入 | ❌ | ✅ | ✅ | ✅ | ✅ |
| 更新 | ❌ | ✅ | ✅ | ✅ | ✅ |
| 删除 | ❌ | ✅ | ✅ | ✅ | ✅ |
详细功能
看板操作
- ✅ 读取所有看板
- ✅ 读取特定看板的详细信息
列表操作
- ✅ 读取看板中的所有列表
- ✅ 读取特定列表的详细信息
- ✅ 创建新列表
- ✅ 更新列表名称
- ✅ 归档(删除)列表
卡片操作
- ✅ 读取列表中的所有卡片
- ✅ 读取特定卡片的详细信息
- ✅ 创建新卡片
- ✅ 更新卡片属性
- ✅ 删除卡片
检查清单操作
- ✅ 获取特定检查清单
- ✅ 列出卡片中的所有检查清单
- ✅ 创建新检查清单
- ✅ 更新检查清单
- ✅ 删除检查清单
- ✅ 向检查清单添加项目
- ✅ 更新检查清单项目
- ✅ 删除检查清单项目
使用方法
安装后,你可以通过 Claude 与 Trello 看板交互。以下是一些示例查询:
- “显示我的所有看板”
- “看板 [board_name] 中有哪些列表?”
- “在列表 [list_name] 中创建一张标题为 [title] 的新卡片”
- “更新卡片 [card_name] 的描述”
- “归档列表 [list_name]”
以下是我的使用示例:
故障排查
如果遇到问题:
- 在
.env文件中检查 Trello API 凭据 - 检查你是否拥有 Trello 工作区的适当权限
- 确保 Claude for Desktop 已运行最新版本
- 使用
uv run mcp dev main.py命令检查日志中是否有错误消息。 - 确保已正确安装 uv,且其位于 PATH 中
贡献
欢迎提交问题和功能改进请求!
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。