Trello MCP Server

使用说明(Markdown 格式)

  • 项目简介

    • 这是一个基于 MCP(Model Context Protocol)的服务器实现,内部将 Trello 的各类资源(如看板、列表、卡片、标签、附件等)以及对 Trello 的操作工具暴露为 MCP 工具,LLM 客户端可以通过统一的接口调用这些工具来获取数据、执行操作并获取结构化结果。
  • 主要功能点

    • MCP 服务入口与工具注册:通过 FastMCP 实例注册大量工具(如 list_my_boards、get_board、get_board_lists、create_list、get_list_cards、create_card、update_card、move_card、archive_card 等),并对调用结果进行统一封装。
    • Trello API 封装:使用 TrelloClient 封装 Trello 的 REST API 调用(GET、POST、PUT、DELETE),实现对 Trello 资源的查询与修改。
    • 错误处理与格式化:统一将 TrelloError 及其子类转换为 MCP 可用的响应结构,返回结构化数据与文本内容。
    • 传输与入口:服务器默认通过标准输入输出(stdio)作为传输方式,便于与 MCP 客户端直接对接;也可以扩展为 SSE、WebSocket 等传输协议(代码中示例使用 stdio)。
    • 配置与测试友好:通过环境变量提供 Trello 的 API key 和 token,并提供测试用的配置重置能力。
  • 安装步骤

    • 安装所需环境:需要 Python 3.10 及以上版本。
    • 获取代码与依赖
      • 克隆仓库并进入项目目录。
      • 使用虚拟环境(推荐):创建并激活一个虚拟环境。
      • 安装依赖:将以开发模式安装本项目,或直接安装公开版本。
    • 配置 Trello 凭据
      • 设置环境变量 TRELLO_API_KEY(Trello API Key)和 TRELLO_TOKEN(用户令牌)。
    • 启动 MCP 服务器
      • 以模块方式运行服务器: python -m trello_mcp(服务器将以 stdio 传输启动,等待 MCP 客户端连接)。
    • 与 MCP 客户端对接
      • 使用 MCP 客户端或集成工具,按照 MCP 规范通过标准输入/输出与服务器进行交互。
  • 服务器配置(给 MCP 客户端的配置信息不可直接执行,供参考配置格式)

    • 说明:MCP 客户端需要将服务器信息放在自己的配置中,用于启动服务器进程并传递必要的环境变量。下面示例仅供参考,实际使用请按客户端需求组织。
    • 示例(json,描述服务器名称、启动命令及参数、以及凭据变量): { "mcpServers": { "trello": { "command": "uvx", "args": ["trello-mcp"], "env": { "TRELLO_API_KEY": "your-api-key", "TRELLO_TOKEN": "your-token" } // 备注:server name 为 trello,启动命令通常为 uvx trello-mcp 的组合,确保环境变量正确填充 Trello 的凭据。 } } }
  • 基本使用方法

    • 启动后,MCP 客户端将通过 MCP 协议向 Trello MCP Server 发送请求(如读取看板、获取列表、创建卡、更新卡等)。
    • 客户端可以调用注册的工具,服务器将执行 Trello API 调用并返回结构化数据和可读文本内容,便于继续对话式处理或模板渲染。
    • 服务器会对 Trello API 错误进行统一处理,并以标准的错误对象返回给客户端。
  • 额外信息

    • 服务器核心使用的工具涵盖:看板、列表、卡片、标签、检查清单、成员、附件、搜索等,且每个工具都实现了对 Trello API 的封装和统一格式的返回结果。
    • 触发与错误处理遵循 TrelloError 及其子类,提供清晰的状态码与文本描述。

服务器信息