M-Kampmann/trello-mcp-cloudflare
If you are the rightful owner of trello-mcp-cloudflare and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server for Trello API integration, deployable on Cloudflare Workers, enabling AI assistants to interact with Trello.
Trello MCP Server on Cloudflare Workers
A Model Context Protocol (MCP) server that provides comprehensive Trello integration, deployed on Cloudflare Workers with secure authentication.
š Live Deployment
Server URL: https://trello-mcp-cloudflare-v2.matthias-51d.workers.dev
Endpoints:
- SSE Transport:
/sse
(Server-Sent Events for persistent connections) - HTTP Transport:
/mcp
(JSON-RPC over HTTP for simple requests)
š§ Features
Trello Operations Supported:
- Boards: List, get, create boards
- Lists: Get lists, create lists
- Cards: Get, create, update, move, delete cards
- Comments: Add and retrieve card comments
- Labels: Manage board labels and card labels
- Members: Manage board members and card assignments
- Checklists: Create checklists and manage checklist items
- Search: Search cards across your Trello workspace
- Attachments: Attach URLs to cards
š Authentication
The server uses secure authentication with environment variables:
Required Environment Variables:
TRELLO_API_KEY
: Your Trello API key (Get it here)TRELLO_TOKEN
: Your Trello token (Generate here)SHARED_SECRET
: Shared secret for MCP authentication
Authentication Methods:
- URL Parameter:
?secret=your_shared_secret
- Authorization Header:
Authorization: Bearer your_shared_secret
š¦ Setup & Deployment
Prerequisites:
- Node.js 18+
- Cloudflare account
- Trello API credentials
Local Development:
# Clone the repository
git clone https://github.com/M-Kampmann/trello-mcp-cloudflare.git
cd trello-mcp-cloudflare
# Install dependencies
npm install
# Copy environment variables template
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your actual credentials
# TRELLO_API_KEY=your_api_key
# TRELLO_TOKEN=your_token
# SHARED_SECRET=your_secret
# Start local development server
npm run dev
Deploy to Cloudflare:
# Set production secrets
wrangler secret put TRELLO_API_KEY
wrangler secret put TRELLO_TOKEN
wrangler secret put SHARED_SECRET
# Deploy to Cloudflare Workers
npm run deploy
š Usage Examples
Test Authentication:
# Test with correct secret (should work)
curl "https://trello-mcp-cloudflare-v2.matthias-51d.workers.dev/sse?secret=your_secret"
# Test with wrong secret (should return 401)
curl "https://trello-mcp-cloudflare-v2.matthias-51d.workers.dev/sse?secret=wrong_secret"
MCP Client Integration:
# Using mcp-remote proxy
npx mcp-remote https://trello-mcp-cloudflare-v2.matthias-51d.workers.dev/sse?secret=your_secret
š„ļø Claude Desktop Integration
Add to your Claude Desktop configuration (claude_desktop_config.json
):
{
"mcpServers": {
"trello": {
"command": "npx",
"args": [
"mcp-remote",
"https://trello-mcp-cloudflare-v2.matthias-51d.workers.dev/sse?secret=your_shared_secret"
]
}
}
}
š ļø Development
Project Structure:
āāā src/
ā āāā index.ts # Main MCP server implementation
āāā wrangler.toml # Cloudflare Workers configuration
āāā package.json # Dependencies and scripts
āāā .dev.vars.example # Environment variables template
āāā README.md # This file
Available Tools:
listBoards
- Get all accessible boardsgetBoard
- Get specific board detailscreateBoard
- Create a new boardgetLists
- Get lists from a boardcreateList
- Create a new listgetCards
- Get cards from a listgetBoardCards
- Get all cards from a boardgetCard
- Get specific card detailscreateCard
- Create a new cardupdateCard
- Update card propertiesmoveCard
- Move card between listsdeleteCard
- Delete a cardaddComment
- Add comment to cardgetComments
- Get card commentsaddLabel
- Add label to cardremoveLabel
- Remove label from cardgetBoardLabels
- Get board labelscreateLabel
- Create new labeladdMemberToCard
- Assign member to cardremoveMemberFromCard
- Remove member from cardgetBoardMembers
- Get board memberscreateChecklist
- Create checklist on cardaddChecklistItem
- Add item to checklistgetCardChecklists
- Get card checklistssearchCards
- Search cards by queryattachUrlToCard
- Attach URL to cardgetCurrentUser
- Get current user infoarchiveListCards
- Archive all cards in list
š Security
- All API credentials are stored as Cloudflare Workers secrets
- Authentication required for all endpoints
- CORS properly configured for web clients
- No sensitive data exposed in logs
š License
MIT License - see LICENSE file for details
š¤ Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
š Troubleshooting
Common Issues:
Authentication Errors:
- Verify your
SHARED_SECRET
is set correctly - Check that Trello API credentials are valid
- Ensure you're using the correct URL parameter format
Connection Issues:
- Verify the server URL is accessible
- Check that CORS headers are properly set
- Test with curl first before using MCP clients
Deployment Issues:
- Ensure all secrets are set in Cloudflare Workers
- Check wrangler.toml configuration
- Verify Node.js compatibility settings
For more help, check the Cloudflare Workers documentation or MCP specification.