- Explore MCP Servers
- trello-mcp-server
Trello Mcp Server
What is Trello Mcp Server
The trello-mcp-server is a Model Context Protocol (MCP) server designed to facilitate interactions with the Trello API, enabling users to manage Trello boards, lists, cards, and more through a structured and modular approach.
Use cases
Use cases for trello-mcp-server include automating Trello board management, building custom applications that leverage Trello’s features, creating integrations with other tools, and enhancing team collaboration through customized workflows.
How to use
To use trello-mcp-server, clone the repository, install the dependencies, configure your Trello API key and token in a .env file, build the project, and start the server. Detailed steps are provided in the README.
Key features
Key features include complete Trello integration, comprehensive API coverage for major operations, a modular architecture for clear separation of concerns, full TypeScript support for type safety, and robust error handling throughout the codebase.
Where to use
trello-mcp-server can be used in software development projects that require integration with Trello for task management, project tracking, and collaboration tools, particularly in agile environments.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Trello Mcp Server
The trello-mcp-server is a Model Context Protocol (MCP) server designed to facilitate interactions with the Trello API, enabling users to manage Trello boards, lists, cards, and more through a structured and modular approach.
Use cases
Use cases for trello-mcp-server include automating Trello board management, building custom applications that leverage Trello’s features, creating integrations with other tools, and enhancing team collaboration through customized workflows.
How to use
To use trello-mcp-server, clone the repository, install the dependencies, configure your Trello API key and token in a .env file, build the project, and start the server. Detailed steps are provided in the README.
Key features
Key features include complete Trello integration, comprehensive API coverage for major operations, a modular architecture for clear separation of concerns, full TypeScript support for type safety, and robust error handling throughout the codebase.
Where to use
trello-mcp-server can be used in software development projects that require integration with Trello for task management, project tracking, and collaboration tools, particularly in agile environments.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
Trello MCP Server
A Model Context Protocol (MCP) server that provides tools for interacting with the Trello API. Built on the Generic MCP Server Template.
Features
- Trello Integration: Complete access to Trello boards, lists, cards, and more
- Comprehensive API Coverage: Support for all major Trello operations
- Modular Architecture: Clear separation of concerns with a well-defined structure
- Type Safety: Full TypeScript support with proper typing for Trello objects
- Error Handling: Robust error management throughout the codebase
Project Structure
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
Getting Started
Prerequisites
- Node.js 18 or higher
- npm or yarn
- Trello API key and token
Installation
-
Clone this repository:
git clone https://github.com/yourusername/trello-mcp-server.git cd trello-mcp-server -
Install dependencies:
npm install -
Create a
.envfile based on.env.example:cp .env.example .env -
Edit the
.envfile with your Trello API key and token:TRELLO_API_KEY=your_trello_api_key TRELLO_TOKEN=your_trello_tokenYou can obtain these from the Trello Developer Portal.
Building and Running
-
Build the project:
npm run build -
Run the server:
npm start
Available Tools
The server provides tools for interacting with all major Trello resources:
Board Tools
get_boards- Get all boards for the authenticated userget_board- Get a specific board by IDcreate_board- Create a new boardupdate_board- Update an existing boarddelete_board- Delete a boardget_board_lists- Get all lists on a boardget_board_members- Get all members of a boardget_board_labels- Get all labels on a boardclose_board- Close (archive) a boardreopen_board- Reopen a closed board
List Tools
get_list- Get a specific list by IDcreate_list- Create a new list on a boardupdate_list- Update an existing listarchive_list- Archive a listunarchive_list- Unarchive a listmove_list_to_board- Move a list to a different boardget_cards_in_list- Get all cards in a listarchive_all_cards- Archive all cards in a listmove_all_cards- Move all cards in a list to another listupdate_list_position- Update the position of a list on a boardupdate_list_name- Update the name of a listsubscribe_to_list- Subscribe to a list
Card Tools
get_card- Get a specific card by IDcreate_card- Create a new cardupdate_card- Update an existing carddelete_card- Delete a cardarchive_card- Archive a cardunarchive_card- Unarchive a cardmove_card_to_list- Move a card to a different listadd_comment- Add a comment to a cardget_comments- Get comments on a cardadd_attachment- Add an attachment to a cardget_attachments- Get attachments on a carddelete_attachment- Delete an attachment from a cardadd_member- Add a member to a cardremove_member- Remove a member from a cardadd_label- Add a label to a cardremove_label- Remove a label from a cardset_due_date- Set the due date for a cardset_due_complete- Mark a card’s due date as complete or incomplete
Member Tools
get_me- Get the authenticated member (current user)get_member- Get a specific member by ID or usernameget_member_boards- Get boards that a member belongs toget_member_cards- Get cards assigned to a memberget_boards_invited- Get boards that a member has been invited toget_member_organizations- Get organizations that a member belongs toget_notifications- Get notifications for the authenticated memberupdate_me- Update the authenticated member’s informationget_avatar- Get the authenticated member’s avatarsearch_members- Search for members by nameget_board_members- Get members of a boardget_organization_members- Get members of an organizationget_card_members- Get members assigned to a card
Label Tools
get_label- Get a specific label by IDcreate_label- Create a new label on a boardupdate_label- Update an existing labeldelete_label- Delete a labelget_board_labels- Get all labels on a boardupdate_label_name- Update the name of a labelupdate_label_color- Update the color of a labelcreate_label_on_card- Create a new label directly on a cardget_card_labels- Get all labels on a cardadd_label_to_card- Add a label to a cardremove_label_from_card- Remove a label from a card
Checklist Tools
get_checklist- Get a specific checklist by IDcreate_checklist- Create a new checklist on a cardupdate_checklist- Update an existing checklistdelete_checklist- Delete a checklistget_checkitems- Get all checkitems on a checklistcreate_checkitem- Create a new checkitem on a checklistget_checkitem- Get a specific checkitem on a checklistupdate_checkitem- Update a checkitem on a checklistdelete_checkitem- Delete a checkitem from a checklistupdate_checklist_name- Update the name of a checklistupdate_checklist_position- Update the position of a checklist on a cardget_checklist_board- Get the board a checklist is onget_checklist_card- Get the card a checklist is onupdate_checkitem_state_on_card- Update a checkitem’s state on a card
Configuration
The server uses a centralized configuration system in src/config.ts. Configuration can be provided through:
- Environment variables
- Command line arguments (with
--env KEY=VALUE) - Default values in the code
Required environment variables:
TRELLO_API_KEY- Your Trello API keyTRELLO_TOKEN- Your Trello API token
Error Handling
The server includes comprehensive error handling:
- Service-level error handling with rate limiting support
- Tool-level error handling with proper error messages
- MCP protocol error handling
- Trello API error handling
License
This project is licensed under the MIT License - see the LICENSE file for details.
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










