Trello MCP Server
Provides seamless integration with Trello's API to manage boards, lists, and cards through natural language. It supports full CRUD operations, card movement, and the ability to load Trello resources directly into an LLM's context for analysis.
README
Trello MCP Server
A Model Context Protocol (MCP) server that provides seamless integration with Trello's API. Manage your Trello boards, lists, and cards directly through Claude or any MCP-compatible client.
Features
- Board Management: List, view, and create Trello boards
- List Operations: Create, view, and archive lists on boards
- Card CRUD: Full create, read, update, delete operations for cards
- Card Movement: Move cards between lists with position control
- MCP Resources: Load board, list, and card data into LLM context for analysis
- Secure Authentication: API key and token-based authentication via environment variables
Installation
Prerequisites
- Python 3.11 or higher
- A Trello account
- Trello API credentials (API key and token)
Install the Package
# Clone or download this repository
cd TrelloMCP
# Install using pip
pip install -e .
# Or using uv (recommended)
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e .
Getting Trello API Credentials
Step 1: Get Your API Key
- Visit Trello Power-Ups Admin
- Click "New" to create a new Power-Up (if you don't have one)
- Fill in the required information (name, workspace, etc.)
- Once created, you'll see your API Key on the Power-Up's page
Alternatively, you can get your API key directly from: https://trello.com/app-key
Step 2: Generate an API Token
-
While viewing your API key page, click the "Token" link or visit:
https://trello.com/1/authorize?expiration=never&name=TrelloMCP&scope=read,write&response_type=token&key=YOUR_API_KEY(Replace
YOUR_API_KEYwith the key from Step 1) -
Click "Allow" to authorize the application
-
Copy the API Token that is displayed
Step 3: Configure Environment Variables
Create a .env file in the project root:
cp .env.example .env
Edit .env and add your credentials:
TRELLO_API_KEY=your_api_key_here
TRELLO_API_TOKEN=your_api_token_here
Important: Never commit your .env file to version control. It's already in .gitignore.
Usage
Running the Server Standalone
trello-mcp
The server will start and listen for MCP connections via stdio.
Using with Claude Desktop
Add the following to your Claude Desktop configuration file:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"trello": {
"command": "trello-mcp",
"env": {
"TRELLO_API_KEY": "your_api_key_here",
"TRELLO_API_TOKEN": "your_api_token_here"
}
}
}
}
Alternatively, if you have a .env file in your project directory:
{
"mcpServers": {
"trello": {
"command": "python",
"args": ["-m", "trello_mcp"],
"cwd": "/path/to/TrelloMCP",
"env": {}
}
}
}
The server will automatically load credentials from the .env file in the working directory.
Restart Claude Desktop
After updating the configuration, restart Claude Desktop to load the Trello MCP server.
Available Tools
The server provides the following tools that you can use through natural language with Claude:
Board Tools
list_boards()- List all your Trello boardsget_board(board_id)- Get details of a specific boardcreate_board(name, desc?)- Create a new board
List Tools
get_board_lists(board_id)- Get all lists on a boardcreate_list(board_id, name, pos?)- Create a new list on a boardarchive_list(list_id)- Archive (close) a list
Card Tools
list_cards(list_id)- Get all cards in a listget_card(card_id)- Get details of a specific cardcreate_card(list_id, name, desc?, pos?)- Create a new cardupdate_card(card_id, name?, desc?, list_id?)- Update a carddelete_card(card_id)- Delete a cardmove_card(card_id, list_id, pos?)- Move a card to another list
Available Resources
Resources allow you to load Trello data into the LLM's context for analysis:
trello://board/{board_id}- Load complete board information with all lists and cardstrello://list/{list_id}- Load list information with all cardstrello://card/{card_id}- Load detailed card information
Example Conversations with Claude
Once configured, you can interact with Trello naturally:
"Show me all my Trello boards"
- Claude will call
list_boards()and display your boards
"Create a new board called 'Q1 2026 Planning'"
- Claude will call
create_board(name="Q1 2026 Planning")
"On my project board, create a new list called 'In Review'"
- Claude will first find your board, then call
create_list()
"Add a card 'Review design docs' to the To Do list with description 'Need to review the new UI designs'"
- Claude will call
create_card()with the appropriate parameters
"Move that card to the In Progress list"
- Claude will call
move_card()to relocate it
"Load the full context of board abc123"
- Claude will use the resource
trello://board/abc123to load all data
Development
Running Tests
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
Project Structure
TrelloMCP/
├── src/
│ └── trello_mcp/
│ ├── __init__.py
│ ├── __main__.py # Entry point
│ ├── server.py # MCP server with tools and resources
│ └── trello_client.py # Trello API client wrapper
├── tests/
│ ├── __init__.py
│ └── test_server.py
├── pyproject.toml
├── README.md
├── .env.example
└── .gitignore
Adding New Features
- Add new API methods to
TrelloClientintrello_client.py - Add corresponding tools/resources in
server.pyusing FastMCP decorators - Update this README with the new functionality
API Rate Limits
Trello's API has rate limits per API key. If you exceed them, you'll receive a 429 error. For frequent updates, consider using Trello webhooks instead of polling.
Troubleshooting
"Invalid Trello API credentials" error
- Verify your
TRELLO_API_KEYandTRELLO_API_TOKENare correct - Make sure there are no extra spaces or quotes in your
.envfile - Try regenerating your API token
"Resource not found" error
- Double-check the board/list/card ID you're using
- Ensure you have access to the resource with your Trello account
Server not showing in Claude Desktop
- Check that the path to
trello-mcpis correct - Verify the JSON syntax in
claude_desktop_config.json - Restart Claude Desktop completely
- Check Claude Desktop's logs for error messages
Security Notes
- Keep your API key and token secure - never commit them to version control
- The
.envfile is automatically ignored by git - API tokens grant full access to your Trello account - treat them like passwords
- Consider creating a separate Trello workspace for testing
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
License
MIT License - feel free to use this server for your own projects.
References
- Trello REST API Documentation
- Model Context Protocol
- FastMCP Framework
- Getting Started with Trello REST API
Acknowledgments
Built with:
- FastMCP - High-level Python SDK for MCP
- httpx - Modern HTTP client
- python-dotenv - Environment variable management
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。