Skip to main content
Glama
README.md
# Trello MCP Server (TypeScript)

A TypeScript implementation of a Model Context Protocol (MCP) server for Trello integration, providing tools for AI assistants to interact with Trello boards, lists, and cards.

## Features

- Full Trello API integration through MCP tools
- Asynchronous operations for better performance
- Type-safe implementation using TypeScript
- Comprehensive error handling
- Environment-based configuration

## Prerequisites

- Node.js 18.x or higher
- npm or yarn
- Trello API credentials

## Installation

```bash
# Install dependencies
make install
```

## Configuration

Create a `.env` file in the root directory with your Trello credentials:

```env
TRELLO_API_KEY=your_api_key
TRELLO_TOKEN=your_token
```

## Available Commands

```bash
# Install dependencies
make install

# Build the project
make build

# Start the server
make start

# Clean build artifacts
make clean

# Run linter
make lint
```

## MCP Tools

### get_boards
Retrieves all Trello boards for the authenticated user.
```typescript
// No input parameters required
```

### get_lists
Fetches all lists from a specified board.
```typescript
{
  "request": {
    "board_id": string // ID of the board
  }
}
```

### get_cards
Gets cards from a board or specific list.
```typescript
{
  "request": {
    "board_id": string,    // ID of the board
    "list_id"?: string     // Optional: ID of a specific list
  }
}
```

### get_card_details
Retrieves detailed information about a specific card.
```typescript
{
  "request": {
    "card_id": string      // ID of the card
  }
}
```

## Development

The project uses TypeScript for type safety and better developer experience. The source code is organized as follows:

- `src/index.ts` - Main server entry point
- `src/trello-client.ts` - Trello API client implementation
- `src/types.ts` - TypeScript type definitions

## Building

The project uses TypeScript compiler for building:

```bash
# Build the project
make build

# The output will be in the build/ directory
```

## Error Handling

The server implements comprehensive error handling for:
- API authentication errors
- Rate limiting
- Network issues
- Invalid request parameters

## Contributing

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## Using with Cline

To use this MCP server with Cline, add the following configuration to your Cline MCP settings file (`~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`):

```json
{
  "mcpServers": {
    "trello-ts": {
      "command": "node",
      "args": ["/path/to/mcp-server-ts-trello/build/index.js"],
      "env": {
        "TRELLO_API_KEY": "your_api_key",
        "TRELLO_TOKEN": "your_token"
      }
    }
  }
}
```

After adding the configuration and restarting Cline, you can use the following MCP tools:
- `get_boards`: List all Trello boards
- `get_lists`: Get lists from a board
- `get_cards`: Get cards from a board or list
- `get_card_details`: Get detailed card information

## License

ISC License - See LICENSE file for details

TDQS

B3.1/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose targeting specific Trello resources: get_boards (boards), get_lists (lists), get_cards (cards in board/list), get_card_details (specific card details), and update_card (modify card). No ambiguity or overlap exists between these operations.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case: get_boards, get_card_details, get_cards, get_lists, update_card. The naming is predictable and readable throughout the set.

Tool Count4/5

Five tools is reasonable for a Trello server, covering core read operations and one update. It's slightly under-scoped as it lacks create/delete operations for boards, lists, or cards, but the count itself is appropriate for the provided functionality.

Completeness3/5

The toolset covers read operations well (boards, lists, cards, card details) and one update (card), but there are notable gaps: no create or delete tools for any resources (boards, lists, cards), and missing operations like moving cards between lists or managing members. This limits full lifecycle management.

Maintenance

ActivityInactive
ResponsivenessNo issues