# Mtl Trello Mcp

> MCP server for Trello project management

- **Type:** MCP server
- **Install:** `agentstack add mcp-musictechlab-mtl-trello-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [musictechlab](https://agentstack.voostack.com/s/musictechlab)
- **Installs:** 0
- **Category:** [Productivity](https://agentstack.voostack.com/c/productivity)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [musictechlab](https://github.com/musictechlab)
- **Source:** https://github.com/musictechlab/mtl-trello-mcp

## Install

```sh
agentstack add mcp-musictechlab-mtl-trello-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# mtl-trello-mcp

[](LICENSE)
[](https://github.com/musictechlab/mtl-trello-mcp/actions/workflows/ci.yml)
[](https://www.python.org/)
[](https://docs.astral.sh/ruff/)
[](https://musictechlab.io)

[Model Context Protocol](https://modelcontextprotocol.io/) (MCP) server for [Trello](https://trello.com/) project management.

Manage boards, lists, cards, labels, and members - all from Claude Code or any MCP-compatible client.

## Tools

| Tool | Description |
|------|-------------|
| `trello_list_boards` | List all boards |
| `trello_get_board` | Get board with all lists and cards |
| `trello_get_lists` | Get lists in a board |
| `trello_create_list` | Create a new list |
| `trello_get_card` | Get full card details |
| `trello_create_card` | Create a new card |
| `trello_update_card` | Update card name, description, due date |
| `trello_move_card` | Move card to a different list |
| `trello_archive_card` | Archive a card |
| `trello_add_attachment` | Attach a local file (image, PDF, …) to a card |
| `trello_attach_link` | Attach a URL (web link) to a card |
| `trello_get_comments` | Get comments on a card |
| `trello_add_comment` | Add a comment to a card |
| `trello_comment_with_attachment` | Upload a file and post a comment embedding/linking it |
| `trello_search` | Search cards by keyword |
| `trello_get_labels` | Get board labels |
| `trello_get_members` | Get board members |

## Setup

### 1. Get Trello API credentials

1. Register a [Trello Power-Up](https://trello.com/power-ups/admin)
2. Note your **API Key** and generate a **Token** from the Power-Up admin page

### 2. Configure environment

```bash
cp .env.example .env
# Edit .env with your TRELLO_API_KEY and TRELLO_TOKEN
```

**Attachment upload safety.** The attachment tools (`trello_add_attachment`,
`trello_comment_with_attachment`) validate every local path before uploading,
to stop a prompt-injected path from leaking a sensitive file onto a card:

| Var | Default | Effect |
|-----|---------|--------|
| `TRELLO_UPLOAD_DIR` | `~` | Uploads must resolve to a regular file inside this root (symlinks resolved first). |
| `TRELLO_ALLOW_HIDDEN` | unset | When not `1`, any hidden path component (`.ssh`, `.aws`, `.config`, `.env`, …) is rejected — this is what blocks `~/.ssh/id_rsa` under the default home root. |
| `TRELLO_MAX_UPLOAD_MB` | `50` | Maximum upload size in MB. |

Sensitive filename patterns (`*.pem`, `*.key`, `*.env`, `id_rsa`, `.netrc`, …)
are rejected regardless. For the strictest setup, point `TRELLO_UPLOAD_DIR` at
a dedicated staging folder that contains nothing else.

### 3. Install dependencies

```bash
poetry install
```

### 4. Add to Claude Code

```bash
claude mcp add mtl-trello -- poetry -C /path/to/mtl-trello-mcp run python -m mtl_trello_mcp
```

Or add it manually to your Claude Code MCP settings:

```json
{
  "mtl-trello": {
    "type": "stdio",
    "command": "poetry",
    "args": ["-C", "/path/to/mtl-trello-mcp", "run", "python", "-m", "mtl_trello_mcp"],
    "env": {
      "TRELLO_API_KEY": "your-api-key",
      "TRELLO_TOKEN": "your-token"
    }
  }
}
```

## Usage examples

Once configured, you can ask Claude:

- "Show me all my Trello boards"
- "What cards are on the MTL board?"
- "Create a card 'Fix ISRC validation' in the BACKLOG list"
- "Move card abc123 to the DONE list"
- "Search Trello for 'audio fingerprinting'"
- "Translate all card names on this board to English"

## Development

```bash
# Install dev dependencies
poetry install

# Run the server directly
poetry run python -m mtl_trello_mcp

# Run tests
poetry run pytest

# Run linter
poetry run ruff check .
```

## Contributing

Contributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.md) before submitting a PR.

## Security

To report a vulnerability, please see [SECURITY.md](SECURITY.md).

## License

MIT - see [LICENSE](LICENSE) for details.

---

  MusicTech Lab - Rockstars Developers dedicated to the Music Industry
  Website
   | 
  LinkedIn
   | 
  Let's talk
  Crafted by musictechlab.io

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [musictechlab](https://github.com/musictechlab)
- **Source:** [musictechlab/mtl-trello-mcp](https://github.com/musictechlab/mtl-trello-mcp)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-musictechlab-mtl-trello-mcp
- Seller: https://agentstack.voostack.com/s/musictechlab
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
