A Model Context Protocol (MCP) server that provides tools for interacting with the Trello API.
Credentials are stored securely in your OS credential manager, not in plaintext files.
- Secure Credential Storage: Credentials stored in OS credential manager (Windows Credential Manager, macOS Keychain, or Linux libsecret)
- No Plaintext Secrets: No
.envfiles, no environment variables for credentials - Trello Integration: Complete access to Trello boards, lists, cards, and more
- Comprehensive API Coverage: Support for all major Trello operations
- Type Safety: Full TypeScript support with proper typing for Trello objects
- Error Handling: Robust error management throughout the codebase
- Node.js 18 or higher
- npm
- Trello API key and token (see below)
Linux only: Install libsecret
# Debian/Ubuntu
sudo apt install libsecret-1-dev
# Fedora
sudo dnf install libsecret-devel
# Arch
sudo pacman -S libsecret-
Clone this repository:
git clone https://github.com/v4lheru/trello-mcp-server.git cd trello-mcp-server -
Install dependencies:
npm install
-
Build the project:
npm run build
-
Set up your credentials securely:
npm run setup-credentials
This will prompt you for your Trello API key and token, then store them in your OS credential manager.
To get your credentials:
- Go to https://trello.com/app-key
- Copy your API Key
- Click "Generate a Token" and copy the token
Start the MCP server:
npm startIf you have existing credentials in a .env file, the setup script will automatically detect them:
npm run setup-credentialsYou'll see:
📁 Found existing credentials in: /path/to/.env
Both API Key and Token found.
Migrate these credentials to secure storage? (Y/n):
After migration, you can optionally remove the credentials from your .env file.
- Set/update credentials:
npm run setup-credentials - Delete credentials:
npm run delete-credentials
Credentials are stored in:
- Windows: Credential Manager → Windows Credentials →
trello-mcp-server - macOS: Keychain Access →
trello-mcp-server - Linux: GNOME Keyring / KDE Wallet →
trello-mcp-server
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"trello": {
"command": "node",
"args": ["C:/path/to/trello-mcp-server/build/index.js"]
}
}
}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
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 list
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 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 cardset_due_date- Set the due date for a cardset_due_complete- Mark a card's due date as complete
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 membersearch_members- Search for members by name
get_label- Get a specific label by IDcreate_label- Create a new label on a boardupdate_label- Update an existing labeldelete_label- Delete a labeladd_label_to_card- Add a label to a cardremove_label_from_card- Remove a label from a card
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 checklistupdate_checkitem- Update a checkitem on a checklistdelete_checkitem- Delete a checkitem from a checklist
Credentials are stored in your OS credential manager (Windows Credential Manager, macOS Keychain, or Linux libsecret) and encrypted using your login credentials.
This project is licensed under the MIT License.