trello-mcp
Provides tools for interacting with Trello boards, lists, and cards, including reading and updating Kanban cards on allowlisted boards, creating, moving, and archiving cards, and adding comments and attachments.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@trello-mcplist my boards"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
trello-mcp
Universal Model Context Protocol server for Trello. Works with any MCP-compatible client: Cursor, Claude Desktop, Gemini CLI, Codex, OpenCode, and others.
Read and update Kanban cards on allowlisted boards only. Credentials stay in environment variables; nothing is logged.
Features
stdio transport (MCP standard for local tools)
Board allowlist via
TRELLO_ALLOWED_BOARD_IDSTools: list boards/lists/cards, get/create/update/move cards, add comments
Publishable to npm, GitHub Packages, and GitHub release tarballs
Related MCP server: Trello MCP Server
Requirements
Development: Bun 1.2+
Runtime (published package): Node.js 20+ (bundled
dist/index.js)Trello API key and token (Power-Up admin)
Recommended: dedicated Trello service account, not a personal user token
Environment variables
Variable | Required | Description |
| yes | API key from Trello Power-Up admin |
| yes | User token with |
| yes | Comma-separated board ids the server may access |
Copy .env.example when developing locally. MCP clients pass these via env in server config.
Install
Option 1 — npm (recommended)
npm install -g @thadeu/trello-mcpOr run without a global install:
npx @thadeu/trello-mcpOption 2 — GitHub Packages
Useful if you already mirror internal packages on GitHub.
npm install -g @thadeu/trello-mcp --registry=https://npm.pkg.github.comRequires a GitHub token with read:packages. See .npmrc.example.
Option 3 — GitHub release URL
Each release publishes an npm tarball (.tgz) built from dist/ in CI.
npm install -g https://github.com/thadeu/trello-mcp/releases/download/v0.1.2/thadeu-trello-mcp-0.1.2.tgzReplace the version in the URL with the tag you need.
Option 4 — From source
git clone https://github.com/thadeu/trello-mcp.git
cd trello-mcp
bun install
bun run build
node dist/index.jsMCP client configuration
All clients use the same pattern: spawn trello-mcp (or npx) over stdio and inject env vars.
Cursor
~/.cursor/mcp.json or project .cursor/mcp.json:
{
"mcpServers": {
"trello": {
"command": "npx",
"args": ["-y", "@thadeu/trello-mcp"],
"env": {
"TRELLO_API_KEY": "your_key",
"TRELLO_TOKEN": "your_token",
"TRELLO_ALLOWED_BOARD_IDS": "board_id_1,board_id_2"
}
}
}
}Use "command": "trello-mcp" if installed globally.
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"trello": {
"command": "npx",
"args": ["-y", "@thadeu/trello-mcp"],
"env": {
"TRELLO_API_KEY": "your_key",
"TRELLO_TOKEN": "your_token",
"TRELLO_ALLOWED_BOARD_IDS": "board_id_1"
}
}
}
}Gemini CLI
Gemini supports MCP via project or user config. Point command at the same binary:
{
"mcpServers": {
"trello": {
"command": "trello-mcp",
"env": {
"TRELLO_API_KEY": "your_key",
"TRELLO_TOKEN": "your_token",
"TRELLO_ALLOWED_BOARD_IDS": "board_id_1"
}
}
}
}Consult Gemini CLI MCP docs for the exact config file path on your platform.
OpenCode / Codex
Use the host’s MCP server block with stdio transport. Example for OpenCode-style config:
{
"mcp": {
"trello": {
"type": "stdio",
"command": ["npx", "-y", "@thadeu/trello-mcp"],
"environment": {
"TRELLO_API_KEY": "your_key",
"TRELLO_TOKEN": "your_token",
"TRELLO_ALLOWED_BOARD_IDS": "board_id_1"
}
}
}
}Adjust keys to match your client schema; the server binary and env vars stay the same.
Tools
Tool | Description |
| Boards filtered by allowlist |
| Lists on a board |
| Cards on a board or list |
| Single card details |
| New card in a list |
| Update name, description, due date, labels, archive |
| Move card to another list |
| Add comment to a card |
| Archive (close) a card |
| Attach a URL or local file to a card |
Security
Treat
TRELLO_TOKENlike a password; never commit it.Restrict boards with
TRELLO_ALLOWED_BOARD_IDS.Use a service account token with access only to work boards.
No delete-card tool in v1 to reduce accidental data loss.
Server logs errors to stderr only; stdout is reserved for MCP protocol.
Development
Built with Bun (bundle) and Vitest (tests). TypeScript is used for types only — no tsc emit.
bun install
bun run test # vitest (not `bun test`, which is Bun's native runner)
bun run typecheck # tsc --noEmit
bun run build # bun build → dist/index.js
bun run dev # watch src/index.ts
bun run inspector # MCP InspectorRelease
Tag a version to build, test, publish, and attach assets:
git tag v0.1.2
git push origin v0.1.2Workflow .github/workflows/release.yml:
Runs tests and builds
dist/Creates GitHub release with
npm packtarballPublishes
@thadeu/trello-mcpto npm and GitHub Packages
npm publish setup (one-time)
Create an npm account and ensure you own the
@thadeuscopeCreate an npm Automation token
Add repository secret
NPM_TOKENin GitHub → Settings → Secrets → Actions
License
MIT — Copyright (c) 2026 Thadeu Esteves. See LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/thadeu/trello-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server