Skip to content

lioarce01/trello-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trello MCP Server

A Model Context Protocol (MCP) server that connects Trello with AI assistants like Claude Desktop, GitHub Copilot Chat, and other MCP-compatible clients.

Features

  • 📋 List all your Trello boards
  • 🔍 Read board contents (lists and cards)
  • ➕ Create new cards
  • 🔄 Move cards between lists
  • 💬 Add comments to cards
  • 🗃️ Archive cards
  • 🔗 Access boards as MCP resources
  • 🐳 Docker support for easy deployment

Prerequisites

  • Node.js 20+ installed (for local development)
  • Docker (for containerized deployment)
  • A Trello account
  • Trello API credentials (API Key and Token)

Installation

Option 1: Local Installation

  1. Clone this repository:
git clone https://github.com/lioarce01/trello-mcp-server.git
cd trello-mcp-server
  1. Install dependencies:
npm install
  1. Build the TypeScript code:
npm run build

Option 2: Docker Installation

  1. Clone this repository:
git clone https://github.com/lioarce01/trello-mcp-server.git
cd trello-mcp-server
  1. Build the Docker image:
docker build -t trello-mcp-server .

Getting Trello API Credentials

  1. Get your API Key:

  2. Get your Token:

    • On the same page, click on "Token" link
    • Authorize the application and copy your Token

Configuration

For Claude Desktop

Local Installation

Add the server configuration to your Claude Desktop config file:

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json

{
  "mcp": {
    "servers": {
      "trello-mcp": {
        "command": "node",
        "args": ["absolute/path/to/the/project/dist/index.js"],
        "env": {
          "TRELLO_API_KEY": "your_api_key",
          "TRELLO_TOKEN": "your_token",
          "TRELLO_BASE_URL": "https://api.trello.com/1"
        }
      }
    }
  }
}

Docker Configuration

For Docker deployment, add this configuration:

{
  "mcp": {
    "servers": {
      "trello-mcp": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "-i",
          "-e",
          "TRELLO_API_KEY=your_api_key",
          "-e",
          "TRELLO_TOKEN=your_token",
          "-e",
          "TRELLO_BASE_URL=https://api.trello.com/1",
          "trello-mcp-server"
        ]
      }
    }
  }
}

For VS Code with GitHub Copilot Chat

Local Installation

Add to your VS Code settings.json:

{
  "mcp": {
    "servers": {
      "trello-mcp": {
        "command": "node",
        "args": ["absolute/path/to/the/project/dist/index.js"],
        "env": {
          "TRELLO_API_KEY": "your_api_key",
          "TRELLO_TOKEN": "your_token",
          "TRELLO_BASE_URL": "https://api.trello.com/1"
        }
      }
    }
  }
}

Docker Configuration

{
  "mcp": {
    "servers": {
      "trello-mcp": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "-i",
          "-e",
          "TRELLO_API_KEY=your_api_key",
          "-e",
          "TRELLO_TOKEN=your_token",
          "-e",
          "TRELLO_BASE_URL=https://api.trello.com/1",
          "trello-mcp-server"
        ]
      }
    }
  }
}

Important:

  • Replace absolute/path/to/the/project/dist/index.js with the actual absolute path to your compiled server file (local installation)
  • Replace YOUR_TRELLO_API_KEY and YOUR_TRELLO_TOKEN with your actual Trello credentials

Docker Usage

Using Docker Run

# Build the image
docker build -t trello-mcp-server .

# Run with API key and token as arguments
docker run --rm -i --env-file .env trello-mcp-server

Local Testing

To test if your server works correctly:

  1. Build the project:
npm run build
  1. Run with credentials:
node dist/index.js

Docker Testing

  1. Build and run with Docker:
docker build -t trello-mcp-server .
docker run --rm -i --env-file .env trello-mcp-server
  1. You should see:
MCP server connected and ready.

Note: The server will wait for MCP client connections. To exit, press Ctrl+C.

Once configured, you can interact with your Trello boards through natural language:

List Boards

Show me all my Trello boards

Read Board Contents

What cards are in my "Project Management" board?

Create Cards

Create a new card called "Review documentation" in the "To Do" list

Move Cards

Move the "Bug fix" card to the "In Progress" list

Add Comments

Add a comment to the card saying "This needs urgent attention"

Archive Cards

Archive the completed card "Setup database"

Available Tools

Tool Description Parameters
list_boards List all open Trello boards None
read_board Read lists and cards from a specific board boardId
create_list Create a list boardId, name
create_card Create a new card in a specific list listId, name, desc (optional)
move_card Move a card to a different list cardId, listId
add_comment Add a comment to a card cardId, text
archive_card Archive a card cardId
archive_list Archive a list listId
delete_board Delete a board boardId
update_list_name Update a list name listId, name
update_card_name Update a card name cardId, name

Available Resources

The server exposes your Trello boards as MCP resources that can be read by AI assistants:

  • Resource URI: board:{boardId}
  • Content: JSON containing all lists and cards for the board

Development

Building

Local Development

npm run build

Docker Development

# Build Docker image
docker build -t trello-mcp-server .

Running in Development

Local Development

To run the server directly (for testing):

# With npm
npm run build
node dist/index.js

# With pnpm
pnpm run build
node dist/index.js

Docker Development

# Run with docker (pass credentials as arguments)
docker run --rm -i --env-file .env trello-mcp-server

Development Scripts

You can also create a development script in your package.json:

{
  "scripts": {
    "build": "tsc",
    "start": "node dist/index.js",
    "dev": "tsx ./src/index.ts",
    "docker:build": "docker build -t trello-mcp-server .",
    "docker:run": "docker run --rm -i --env-file .env trello-mcp-server"
  }
}

Troubleshooting

Server Not Connecting

  1. Check credentials: Make sure you're passing API Key and Token as arguments
  2. Verify file path: Ensure the path in your MCP configuration is correct (local installation)
  3. Build first: Always run npm run build or docker build before testing
  4. Test standalone: Try running the server independently first
  5. Restart client: Restart your MCP client (Claude Desktop/VS Code) after config changes

Docker-Specific Issues

  1. Image not found: Make sure you've built the Docker image first with docker build -t trello-mcp-server .
  2. Arguments not passed: Ensure API key and token are passed as arguments after the image name
  3. Permissions: Check that Docker has the necessary permissions to run containers

Invalid Credentials Error

  • Double-check your Trello API Key and Token
  • Ensure the token has the necessary permissions
  • Try regenerating your token if it's expired
  • Verify credentials are properly passed as arguments

Tools Not Working

  • Verify the board/card/list IDs are correct
  • Check that you have write permissions to the Trello board
  • Look at the console logs for detailed error messages

Security Notes

  • Never commit your API credentials to version control
  • Store credentials securely and rotate them regularly
  • Use .env files and add them to .gitignore
  • The server only requires the permissions you grant via the Trello token
  • Consider using environment variables for credentials in production
  • Docker containers run with non-root user for security

License

This project is licensed under the MIT License - see the LICENSE file for details.

Made with ❤️ for the MCP community

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published