
michaelpryor/mcpfortrello
Developer toolsPublicly hosted MCP Server for Trello at mcpfortrello.com
Overview
A public Model Context Protocol server that connects Claude to Trello. Hosted at . Atlassian ships a first-party server at https://mcp.trello.com/v1. It's the better choice for new setups. This project predates it and is no longer the recommended way to connect Trello to an AI assistant. 1. In Claude, go to 2. Enter: https://mcp.trello.com/v1 3. Authorize the Trello workspace you want to give access to Setup for other clients is covered in Trello's MCP documentation. Existing connections to https://mcpfortrello.com/mcp keep working and no shutdown date is set. The rest of this README documents that server, which remains MIT-licensed and self-hostable. Update wrangler.jsonc with your domain and KV namespace ID. Set workers_dev: false for production to force traffic through your custom domain (enables WAF rate limiting). - with OAuth 2.1 via @cloudflare/workers-oauth-provider - Durable Object for MCP sessions (hibernates between requests) - OAuth 2.
README
MCP for Trello
A public Model Context Protocol server that connects Claude to Trello. Hosted at mcpfortrello.com.
Trello has an official MCP server now. Atlassian ships a first-party server at
https://mcp.trello.com/v1. It’s the better choice for new setups. This project predates it and is no longer the recommended way to connect Trello to an AI assistant.
Connect to Trello
- In Claude, go to Settings → Connectors → Add Custom Connector
- Enter:
https://mcp.trello.com/v1 - Authorize the Trello workspace you want to give access to
Setup for other clients is covered in Trello’s MCP documentation.
Existing connections to https://mcpfortrello.com/mcp keep working and no shutdown date is set. The rest of this README documents that server, which remains MIT-licensed and self-hostable.
Tools (43)
| Category | Tools |
|---|---|
| Boards | get_boards, get_board, create_board, update_board, get_board_members, get_board_labels |
| Lists | get_lists, get_list, create_list, update_list, archive_list |
| Cards | get_cards, get_card, create_card, update_card, delete_card, add_card_member, remove_card_member |
| Labels | get_labels, create_label, update_label, delete_label, add_label_to_card, remove_label_from_card |
| Comments | get_comments, add_comment, update_comment |
| Checklists | get_card_checklists, create_checklist, delete_checklist, add_checkitem, update_checkitem |
| Attachments | get_attachments, add_attachment, delete_attachment |
| Custom Fields | get_custom_fields, get_card_custom_field_items, set_card_custom_field_item |
| Search | search |
| Members | get_me, get_member |
| Organizations | get_organizations, get_organization_boards |
| Board Members | add_board_member, remove_board_member |
| Activity | get_actions |
Self-Hosting
Prerequisites
- Node.js 18+
- pnpm
- A Cloudflare account
- A Trello Power-Up registration (for the API key)
Setup
git clone https://github.com/michaelpryor/mcpfortrello.git
cd mcpfortrello
pnpm install
# Create KV namespace
npx wrangler kv namespace create OAUTH_KV
# Update the KV namespace ID in wrangler.jsonc
# Set secrets
npx wrangler secret put TRELLO_API_KEY
npx wrangler secret put COOKIE_ENCRYPTION_KEY # openssl rand -hex 32
# Local development
cp .dev.vars.example .dev.vars
# Fill in your values
pnpm dev
# Deploy (note: `pnpm run deploy` — plain `pnpm deploy` hits pnpm's own subcommand)
pnpm run deploy
Configuration
Update wrangler.jsonc with your domain and KV namespace ID. Set workers_dev: false for production to force traffic through your custom domain (enables WAF rate limiting).
Architecture
- Cloudflare Workers with OAuth 2.1 via
@cloudflare/workers-oauth-provider - McpAgent Durable Object for MCP sessions (hibernates between requests)
- OAuth 2.1 for MCP auth, bridging to Trello’s
/1/authorizetoken flow - Trello credentials encrypted in OAuth grant props
License
MIT
Install
npx wrangler kv namespace create OAUTH_KV