Trello
Interact with Trello boards, lists, and cards using the Trello REST API.
Trello MCP Server
A Model Context Protocol (MCP) server that provides Claude with tools to interact with Trello boards, lists, and cards through the Trello REST API.
Features
Core Functionality
- Board Management: List boards, get board details and metadata
- List Operations: Retrieve lists, create new lists within boards
- Card Management: Create, update, delete, and move cards between lists
- Member Management: Add/remove members from boards and cards
- Labels & Checklists: Manage card labels and checklist items
Technical Features
- TypeScript implementation with full type safety
- Comprehensive error handling and validation
- Rate limiting compliance for Trello API
- Secure authentication using API key/token
- Integration with Popular Agentic IDE via MCP protocol
Prerequisites
- Node.js 18+ and npm
- Trello account with API access
- Claude Desktop application
Installation
- Clone the repository:
git clone <repository-url>
cd trello-mcp
- Install dependencies:
npm install
- Build the project:
npm run build
Authentication Setup
-
Get Trello API Credentials:
- Visit https://trello.com/app-key to get your API key
- Generate a token by visiting:
https://trello.com/1/authorize?expiration=never&scope=read,write,account&response_type=token&name=Server%20Token&key=YOUR_API_KEY
-
Configure Environment: Create a
.envfile in the project root:TRELLO_API_KEY=your_api_key_here TRELLO_TOKEN=your_token_here
Integration Setup
Claude Desktop Integration
Add the following to your Claude Desktop configuration file:
macOS
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
Windows
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"trello": {
"command": "node",
"args": ["/path/to/trello-mcp/dist/index.js"],
"env": {
"TRELLO_API_KEY": "your_api_key_here",
"TRELLO_TOKEN": "your_token_here"
}
}
}
}
Docker Desktop Integration
Docker Desktop (v4.38+) includes built-in MCP server support through the Docker MCP Catalog and Toolkit. This provides the easiest way to run and manage MCP servers.
Option 1: Using Docker Desktop's Built-in MCP Support (Recommended)
-
Enable MCP in Docker Desktop:
- Open Docker Desktop (ensure version 4.38 or later)
- Go to Extensions → Browse → Search for "MCP"
- Install the Docker MCP Catalog and Toolkit extension
-
Publish to Docker Hub's MCP Catalog:
# Build and tag for MCP catalog docker build -t mcp/trello-server . docker push mcp/trello-server -
Configure in Claude Desktop with Docker MCP:
{ "mcpServers": { "trello": { "command": "docker", "args": [ "run", "--rm", "-i", "--env-file", ".env", "mcp/trello-server" ] } } } -
Use with Ask Gordon (Docker AI): Create
gordon-mcp.ymlin your project directory:version: '3.8' services: trello-mcp: image: mcp/trello-server environment: - TRELLO_API_KEY=${TRELLO_API_KEY} - TRELLO_TOKEN=${TRELLO_TOKEN} volumes: - ./logs:/app/logsThen use Docker AI commands:
# Ask Gordon to help with Trello management docker ai "Show me my Trello boards and create a new development task"
Option 2: Traditional Docker Setup
Create a Dockerfile in your project root:
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY dist/ ./dist/
# Create non-root user for security
RUN addgroup -g 1001 -S nodejs
RUN adduser -S mcp -u 1001
RUN chown -R mcp:nodejs /app
USER mcp
EXPOSE 3000
CMD ["node", "dist/index.js"]
Build and run the container:
# Build the image
docker build -t trello-mcp-server .
# Run with Docker MCP Toolkit (secure credential management)
docker run -d \
--name trello-mcp \
--env-file .env \
-p 3000:3000 \
trello-mcp-server
# Or use docker-compose.yml:
Create docker-compose.yml:
version: '3.8'
services:
trello-mcp:
build: .
container_name: trello-mcp-server
environment:
- TRELLO_API_KEY=${TRELLO_API_KEY}
- TRELLO_TOKEN=${TRELLO_TOKEN}
- LOG_LEVEL=info
- API_TIMEOUT=10000
ports:
- "3000:3000"
restart: unless-stopped
volumes:
- ./logs:/app/logs
networks:
- mcp-network
networks:
mcp-network:
driver: bridge
Run with Docker Compose:
# Set environment variables in .env file, then:
docker-compose up -d
Benefits of Docker Desktop MCP Integration
- Built-in Security: OAuth support and secure credential storage
- One-Click Setup: Seamless integration with Claude, Cursor, VSCode, and other MCP clients
- Cross-Platform: Consistent behavior across different architectures
- Isolation: Memory, network, and disk isolation for production-ready security
- Discovery: Access to 100+ verified MCP tools from Docker Hub's MCP Catalog
Cursor IDE Integration
In Cursor, you can set up the MCP server for AI-assisted development:
-
Install Cursor Extension (if available):
- Open Cursor IDE
- Go to Extensions marketplace
- Search for "MCP" or "Model Context Protocol"
-
Configure MCP Server: Create
.cursor/mcp-config.jsonin your workspace:
{
"mcpServers": {
"trello": {
"command": "node",
"args": ["./dist/index.js"],
"cwd": "/path/to/trello-mcp",
"env": {
"TRELLO_API_KEY": "your_api_key_here",
"TRELLO_TOKEN": "your_token_here"
}
}
}
}
- Use with Cursor AI:
- Open Cursor's AI chat panel
- The Trello MCP tools should be available for context
- Ask questions like: "Show me my Trello boards and help me organize my tasks"
Windsurf IDE Integration
For Windsurf IDE integration:
- Project Configuration:
Create
.windsurf/settings.json:
{
"mcp": {
"servers": {
"trello": {
"command": "node",
"args": ["dist/index.js"],
"cwd": "${workspaceFolder}",
"env": {
"TRELLO_API_KEY": "your_api_key_here",
"TRELLO_TOKEN": "your_token_here"
}
}
}
},
"ai": {
"providers": {
"claude": {
"mcpServers": ["trello"]
}
}
}
}
- Workspace Setup:
Add to your
.windsurf/workspace.json:
{
"name": "Trello MCP Development",
"description": "Development workspace with Trello integration",
"mcpServers": ["trello"],
"tools": {
"trello": {
"enabled": true,
"autoStart": true
}
}
}
- Usage in Windsurf:
- The AI assistant will have access to Trello tools
- Use natural language commands in the AI chat
- Example: "Create a development task board and add cards for the current project features"
Development Container (DevContainer)
For consistent development environments, create .devcontainer/devcontainer.json:
{
"name": "Trello MCP Development",
"build": {
"dockerfile": "../Dockerfile.dev"
},
"forwardPorts": [3000],
"postCreateCommand": "npm install && npm run build",
"customizations": {
"vscode": {
"extensions": [
"ms-vscode.vscode-typescript-next",
"esbenp.prettier-vscode",
"bradlc.vscode-tailwindcss"
],
"settings": {
"mcp.servers": {
"trello": {
"command": "node",
"args": ["dist/index.js"],
"env": {
"TRELLO_API_KEY": "${TRELLO_API_KEY}",
"TRELLO_TOKEN": "${TRELLO_TOKEN}"
}
}
}
}
}
},
"remoteEnv": {
"TRELLO_API_KEY": "${localEnv:TRELLO_API_KEY}",
"TRELLO_TOKEN": "${localEnv:TRELLO_TOKEN}"
}
}
Create Dockerfile.dev:
FROM node:18
WORKDIR /workspace
# Install global tools
RUN npm install -g @modelcontextprotocol/inspector typescript
# Set up development environment
COPY package*.json ./
RUN npm install
# Copy source code
COPY . .
# Expose MCP server port
EXPOSE 3000
CMD ["npm", "run", "dev"]
Available Tools
Board Operations
list_boards- Get all boards accessible to the userget_board- Get detailed information about a specific boardget_board_members- List members of a board
List Operations
get_lists- Get all lists in a boardcreate_list- Create a new list in a boardupdate_list- Update list properties (name, position)
Card Operations
get_cards- Get cards from a board or listcreate_card- Create a new cardupdate_card- Update card properties (name, description, due date)move_card- Move card to different listdelete_card- Delete a cardadd_card_member- Add member to a cardremove_card_member- Remove member from a card
Label Operations
get_labels- Get available labels for a boardadd_card_label- Add label to a cardremove_card_label- Remove label from a card
Checklist Operations
get_card_checklists- Get checklists on a cardcreate_checklist- Create a new checklist on a cardadd_checklist_item- Add item to a checklistupdate_checklist_item- Update checklist item (mark complete/incomplete)
Development
Project Structure
trello-mcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── trello-client.ts # Trello API client
│ ├── tools/ # MCP tool implementations
│ │ ├── boards.ts
│ │ ├── lists.ts
│ │ ├── cards.ts
│ │ └── labels.ts
│ └── types/ # TypeScript type definitions
├── dist/ # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md
Scripts
npm run build- Build TypeScript to JavaScriptnpm run dev- Run in development mode with auto-reloadnpm run start- Start the MCP servernpm run test- Run tests
Testing
# Install the MCP Inspector for testing
npm install -g @modelcontextprotocol/inspector
# Test the server
mcp-inspector node dist/index.js
Usage Examples
Once integrated with Claude Desktop, you can use natural language to interact with Trello:
- "Show me all my Trello boards"
- "Create a new card called 'Fix login bug' in the 'To Do' list of my Development board"
- "Move the card 'Review PR #123' to the 'Done' list"
- "Add the 'Priority' label to the card about the database migration"
- "List all cards in my Personal board that are due this week"
Error Handling
The server includes comprehensive error handling for:
- Network connectivity issues
- Invalid API credentials
- Rate limiting (429 errors)
- Invalid board/list/card IDs
- Permission errors
Security Notes
- API credentials are passed via environment variables
- No credentials are logged or stored in plain text
- All API requests use HTTPS
- Rate limiting is respected to avoid API abuse
Contributing
- Fork the repository
- Create a feature branch
- Make your changes with proper TypeScript types
- Add tests for new functionality
- Submit a pull request
License
MIT License - see LICENSE file for details
Support
For issues and questions:
- Check the Trello API documentation: https://developer.atlassian.com/cloud/trello/rest
- Review MCP documentation: https://modelcontextprotocol.io
- Open an issue in this repository
関連サーバー
Kone.vc
スポンサーMonetize your AI agent with contextual product recommendations
Google Sheets
Integrate with Google Sheets to read, write, and manage spreadsheet data.
Notion
Connects AI assistants to your Notion workspace to search and manage pages, databases, and content.
MindmupGoogleDriveMcp
This server enables you to search, retrieve, and parse MindMup files stored in your Google Drive directly through the MCP interface.
VNC
Remotely control any system running a VNC server, including Windows, Linux, and macOS, through an AI agent.
Google Services MCP
(MCP) server for Google Workspace. Drive, Gmail, Calendar, Sheets, Docs, Tasks and People via AI agents.
Counsel
Multi LLM Council for deep counsel on your topic or idea
Normatia
AI-native platform that automates Spanish building code compliance and technical regulations for the AECO sector
MCP Chatbot
An intelligent chatbot for automating tasks like browser control, web searches, and travel planning.
Attio MCP Server
Interact with data in Attio, the AI-native CRM, enabling AI assistants to access and manage your customer relationship information.
MCP Orchestrator
A universal interface to manage and interact with all your MCP servers from a single point, using external configuration files for mappings and credentials.