GitHub - lioarce01/trello-mcp-server (original) (raw)
Trello MCP Server
A Model Context Protocol (MCP) server that connects Trello with AI assistants like Claude Desktop, GitHub Copilot Chat, and other MCP-compatible clients.
Features
- 📋 List all your Trello boards
- 🔍 Read board contents (lists and cards)
- ➕ Create new cards
- 🔄 Move cards between lists
- 💬 Add comments to cards
- 🗃️ Archive cards
- 🔗 Access boards as MCP resources
- 🐳 Docker support for easy deployment
Prerequisites
- Node.js 20+ installed (for local development)
- Docker (for containerized deployment)
- A Trello account
- Trello API credentials (API Key and Token)
Installation
Option 1: Local Installation
- Clone this repository:
git clone https://github.com/lioarce01/trello-mcp-server.git cd trello-mcp-server
- Install dependencies:
- Build the TypeScript code:
Option 2: Docker Installation
- Clone this repository:
git clone https://github.com/lioarce01/trello-mcp-server.git cd trello-mcp-server
- Build the Docker image:
docker build -t trello-mcp-server .
Getting Trello API Credentials
- Get your API Key:
- Go to https://trello.com/app-key
- Copy your API Key
- Get your Token:
- On the same page, click on "Token" link
- Authorize the application and copy your Token
Configuration
For Claude Desktop
Local Installation
Add the server configuration to your Claude Desktop config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json
{ "mcp": { "servers": { "trello-mcp": { "command": "node", "args": ["absolute/path/to/the/project/dist/index.js"], "env": { "TRELLO_API_KEY": "your_api_key", "TRELLO_TOKEN": "your_token", "TRELLO_BASE_URL": "https://api.trello.com/1" } } } } }
Docker Configuration
For Docker deployment, add this configuration:
{ "mcp": { "servers": { "trello-mcp": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "TRELLO_API_KEY=your_api_key", "-e", "TRELLO_TOKEN=your_token", "-e", "TRELLO_BASE_URL=https://api.trello.com/1", "trello-mcp-server" ] } } } }
For VS Code with GitHub Copilot Chat
Local Installation
Add to your VS Code settings.json:
{ "mcp": { "servers": { "trello-mcp": { "command": "node", "args": ["absolute/path/to/the/project/dist/index.js"], "env": { "TRELLO_API_KEY": "your_api_key", "TRELLO_TOKEN": "your_token", "TRELLO_BASE_URL": "https://api.trello.com/1" } } } } }
Docker Configuration
{ "mcp": { "servers": { "trello-mcp": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "TRELLO_API_KEY=your_api_key", "-e", "TRELLO_TOKEN=your_token", "-e", "TRELLO_BASE_URL=https://api.trello.com/1", "trello-mcp-server" ] } } } }
Important:
- Replace
absolute/path/to/the/project/dist/index.js
with the actual absolute path to your compiled server file (local installation) - Replace
YOUR_TRELLO_API_KEY
andYOUR_TRELLO_TOKEN
with your actual Trello credentials
Docker Usage
Using Docker Run
Build the image
docker build -t trello-mcp-server .
Run with API key and token as arguments
docker run --rm -i --env-file .env trello-mcp-server
Local Testing
To test if your server works correctly:
- Build the project:
- Run with credentials:
Docker Testing
- Build and run with Docker:
docker build -t trello-mcp-server . docker run --rm -i --env-file .env trello-mcp-server
- You should see:
MCP server connected and ready.
Note: The server will wait for MCP client connections. To exit, press Ctrl+C
.
Once configured, you can interact with your Trello boards through natural language:
List Boards
Show me all my Trello boards
Read Board Contents
What cards are in my "Project Management" board?
Create Cards
Create a new card called "Review documentation" in the "To Do" list
Move Cards
Move the "Bug fix" card to the "In Progress" list
Add Comments
Add a comment to the card saying "This needs urgent attention"
Archive Cards
Archive the completed card "Setup database"
Available Tools
Tool | Description | Parameters |
---|---|---|
list_boards | List all open Trello boards | None |
read_board | Read lists and cards from a specific board | boardId |
create_list | Create a list | boardId, name |
create_card | Create a new card in a specific list | listId, name, desc (optional) |
move_card | Move a card to a different list | cardId, listId |
add_comment | Add a comment to a card | cardId, text |
archive_card | Archive a card | cardId |
archive_list | Archive a list | listId |
delete_board | Delete a board | boardId |
update_list_name | Update a list name | listId, name |
update_card_name | Update a card name | cardId, name |
Available Resources
The server exposes your Trello boards as MCP resources that can be read by AI assistants:
- Resource URI:
board:{boardId}
- Content: JSON containing all lists and cards for the board
Development
Building
Local Development
Docker Development
Build Docker image
docker build -t trello-mcp-server .
Running in Development
Local Development
To run the server directly (for testing):
With npm
npm run build node dist/index.js
With pnpm
pnpm run build node dist/index.js
Docker Development
Run with docker (pass credentials as arguments)
docker run --rm -i --env-file .env trello-mcp-server
Development Scripts
You can also create a development script in your package.json
:
{ "scripts": { "build": "tsc", "start": "node dist/index.js", "dev": "tsx ./src/index.ts", "docker:build": "docker build -t trello-mcp-server .", "docker:run": "docker run --rm -i --env-file .env trello-mcp-server" } }
Troubleshooting
Server Not Connecting
- Check credentials: Make sure you're passing API Key and Token as arguments
- Verify file path: Ensure the path in your MCP configuration is correct (local installation)
- Build first: Always run
npm run build
ordocker build
before testing - Test standalone: Try running the server independently first
- Restart client: Restart your MCP client (Claude Desktop/VS Code) after config changes
Docker-Specific Issues
- Image not found: Make sure you've built the Docker image first with
docker build -t trello-mcp-server .
- Arguments not passed: Ensure API key and token are passed as arguments after the image name
- Permissions: Check that Docker has the necessary permissions to run containers
Invalid Credentials Error
- Double-check your Trello API Key and Token
- Ensure the token has the necessary permissions
- Try regenerating your token if it's expired
- Verify credentials are properly passed as arguments
Tools Not Working
- Verify the board/card/list IDs are correct
- Check that you have write permissions to the Trello board
- Look at the console logs for detailed error messages
Security Notes
- Never commit your API credentials to version control
- Store credentials securely and rotate them regularly
- Use
.env
files and add them to.gitignore
- The server only requires the permissions you grant via the Trello token
- Consider using environment variables for credentials in production
- Docker containers run with non-root user for security
License
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ for the MCP community