trello-mcp-server

trello-mcp-server

Enables AI assistants to manage Trello boards, lists, cards, labels, checklists, members, comments, and attachments through natural language.

Category
Visit Server

README

Trello MCP Server

A comprehensive Model Context Protocol (MCP) server for integrating with Trello. This server enables AI assistants like Claude, Cursor, and other MCP-compatible tools to seamlessly interact with your Trello boards, lists, and cards.

Features

  • Board Management: List, create, and manage Trello boards
  • List Operations: Create and manage lists on boards
  • Card Management: Full CRUD operations for cards (create, read, update, delete, move)
  • Label Management: Create, update, and manage labels across boards and cards
  • Checklist Support: Create and manage checklists with check items
  • Member Management: Add/remove members from boards and cards
  • Comments: Add, update, and delete comments on cards
  • Attachments: Manage URL attachments on cards
  • Kanban View: Get visual kanban-style board views
  • Progress Reports: Generate completion statistics for boards
  • Real-time Health Checks: Verify Trello API connectivity
  • Flexible Configuration: Runtime configuration updates

Installation

npm install
npm run build

Configuration

Get Trello API Credentials

  1. Visit https://trello.com/app-key
  2. Copy your API key
  3. Click the "Token" link to generate your API token
  4. Copy the generated token

Set Environment Variables

Create a .env file or export environment variables:

export TRELLO_API_KEY="your-api-key-here"
export TRELLO_API_TOKEN="your-api-token-here"

Or copy .env.example to .env and fill in your credentials:

cp .env.example .env
# Edit .env with your credentials

Usage

Run the Server (stdio)

npm start

Or in development mode:

npm run dev

Integration with Claude Desktop

Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "trello": {
      "command": "node",
      "args": ["/absolute/path/to/trello_mcp/dist/index.js"],
      "env": {
        "TRELLO_API_KEY": "your-api-key-here",
        "TRELLO_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

Integration with Cursor

Configure in Cursor's MCP settings with the same command and arguments.

Available Tools

Board Management

  • list-boards: Get all accessible Trello boards
  • get-board: Get detailed information about a specific board
  • create-board: Create a new Trello board
  • get-board-lists: Get all lists on a board
  • create-list: Create a new list on a board

Card Management

  • get-card: Get detailed information about a specific card
  • list-cards: List all cards on a board or list
  • create-card: Create a new card with title, description, due date, labels, and members
  • update-card: Update an existing card
  • move-card: Move a card to a different list (by ID or name)
  • delete-card: Delete a card permanently
  • get-kanban-board: Get a kanban-style view of a board
  • progress-report: Generate progress statistics for a board

Label Management

  • get-board-labels: Get all labels on a board
  • create-label: Create a new label with name and color
  • update-label: Update label name or color
  • delete-label: Delete a label from the board
  • add-label-to-card: Add a label to a card
  • remove-label-from-card: Remove a label from a card

Checklist Management

  • get-card-checklists: Get all checklists on a card
  • create-checklist: Create a new checklist on a card
  • delete-checklist: Delete a checklist
  • add-checklist-item: Add an item to a checklist
  • update-checklist-item: Update checklist item state (complete/incomplete)
  • delete-checklist-item: Delete a checklist item

Member Management

  • get-board-members: Get all members of a board
  • get-current-member: Get current authenticated user information
  • add-member-to-board: Add a member to a board
  • add-member-to-card: Assign a member to a card
  • remove-member-from-card: Remove a member from a card

Comments & Attachments

  • get-card-comments: Get all comments on a card
  • add-comment-to-card: Add a comment to a card
  • update-comment: Update an existing comment
  • delete-comment: Delete a comment
  • get-card-attachments: Get all attachments on a card
  • add-attachment-to-card: Add a URL attachment to a card
  • delete-attachment: Delete an attachment

Utility Tools

  • get-config: Get current server configuration
  • update-config: Update server configuration at runtime
  • health-check: Check Trello API connectivity
  • help: Display help and documentation

Example Workflows

1. Create a New Project Board

1. Use create-board with name="My Project"
2. Use create-list to add lists: "Backlog", "In Progress", "Done"
3. Use create-card to add tasks to the Backlog list

2. Move Tasks Through Workflow

1. Use list-boards to find your board ID
2. Use move-card to move cards from "Backlog" to "In Progress"
3. Use move-card again to move completed cards to "Done"

3. Track Project Progress

1. Use get-kanban-board to see current state
2. Use progress-report to get completion statistics
3. Use list-cards to see all cards on the board

4. Manage Card Details

1. Use create-card with full details (name, description, due date, labels)
2. Use update-card to modify card information
3. Use get-card to retrieve current card state

5. Organize with Labels

1. Use get-board-labels to see available labels
2. Use create-label to add new labels with colors
3. Use add-label-to-card to tag cards

6. Track Tasks with Checklists

1. Use create-checklist on a card
2. Use add-checklist-item to add tasks
3. Use update-checklist-item to check off completed items
4. Use get-card-checklists to view progress

7. Collaborate with Comments

1. Use add-comment-to-card to discuss tasks
2. Use get-card-comments to view conversation
3. Use update-comment to edit your comments

API Reference

Create Card

create-card:
  name: "Card title" (required)
  listId: "list-id" (required)
  desc: "Card description" (optional)
  due: "2025-12-31" (optional, ISO date or date string)
  labels: ["label-id-1", "label-id-2"] (optional)
  members: ["member-id-1"] (optional)
  pos: "top" | "bottom" | number (optional)

Move Card

move-card:
  cardId: "card-id" (required)
  toListId: "target-list-id" (optional if using toListName)
  toListName: "Done" (optional if using toListId, case-insensitive)
  boardId: "board-id" (required when using toListName)

Progress Report

progress-report:
  boardId: "board-id" (required)

Returns:
  - Total cards
  - Cards per list
  - Completed count (lists with "Done" or "Complete" in name)
  - Percentage complete

Development

Project Structure

src/
├── types/
│   └── trello.ts          # TypeScript type definitions
├── services/
│   └── trelloApi.ts       # Trello API service wrapper
├── tools/
│   ├── boardTools.ts      # Board management tools
│   └── cardTools.ts       # Card management tools
├── resources/
│   └── trelloResources.ts # MCP resources (placeholder)
└── index.ts               # Main server entry point

Build

npm run build

Watch Mode

npm run watch

Testing

The server includes a health check tool. After starting, verify connection:

Use the health-check tool to verify Trello API connectivity

Troubleshooting

Connection Issues

  1. Verify your API key and token are correct
  2. Check internet connectivity
  3. Ensure you have access to the Trello API
  4. Run health-check tool to diagnose issues

Missing Environment Variables

If you see errors about missing TRELLO_API_KEY or TRELLO_API_TOKEN:

  1. Make sure you've set the environment variables
  2. Restart Claude Desktop or your MCP client after setting variables
  3. Check that the paths in your MCP configuration are correct

Permission Errors

Ensure your Trello API token has the necessary permissions for the operations you want to perform.

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

License

MIT License

Credits

Built with:

Resources

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured