Skip to main content
Glama

🎯 Trello MCP Server

Intégration puissante de Trello pour Claude Desktop via le Model Context Protocol

Version TypeScript Node.js License MCP

Installation ‱ FonctionnalitĂ©s ‱ Configuration ‱ Utilisation ‱ Documentation


📖 À propos

Trello MCP Server est un serveur Model Context Protocol qui permet à Claude Desktop et autres applications compatibles MCP d'interagir directement avec l'API Trello. Gérez vos boards, lists et cards en langage naturel !

✹ Pourquoi ce projet ?

  • đŸ€– Automatisation naturelle : Demandez Ă  Claude de gĂ©rer Trello pour vous

  • 🔒 SĂ©curisĂ© : Vos credentials restent locaux

  • ⚡ Rapide : TypeScript compilĂ© pour des performances optimales

  • 🎹 Flexible : 42 outils couvrant tous les besoins essentiels

  • đŸ—ïž Architecture moderne : Pattern Factory + Registry pour maintenabilitĂ© optimale (v2.0.0)

  • 🚀 NouveautĂ©s v2.1.0 : Attachments, duplication de cartes, opĂ©rations en masse


Related MCP server: Trello MCP server

🚀 FonctionnalitĂ©s

📊 Gestion des Boards (2 outils)

Outil

Description

list_trello_boards

Liste tous vos boards Trello

create_trello_board

Crée un nouveau board

📝 Gestion des Lists (2 outils)

Outil

Description

list_trello_lists

Liste les colonnes d'un board

create_trello_list

Crée une nouvelle colonne

🎯 Gestion des Cards (12 outils)

Outil

Description

list_trello_cards

Liste les cartes d'une list

create_trello_card

Crée une nouvelle carte

add_card_comment

Ajoute un commentaire

move_trello_card

Déplace une carte entre lists

search_trello_cards

Recherche des cartes

update_card_description

Modifie la description

update_card_name

Modifie le nom d'une carte

get_card_details

Détails complets d'une carte

archive_card

Archive une carte (réversible)

unarchive_card

Désarchive une carte

delete_card

Supprime dĂ©finitivement ⚠

duplicate_card

Duplique une carte avec options sélectives

đŸ·ïž Gestion des Labels (5 outils)

Outil

Description

list_labels

Liste tous les labels d'un board

create_label

Crée un nouveau label

update_label

Modifie un label existant

add_label_to_card

Ajoute un label Ă  une carte

remove_label_from_card

Retire un label d'une carte

📅 Gestion des Dates (4 outils)

Outil

Description

set_card_due_date

Définit une date limite

remove_card_due_date

Supprime la date limite

mark_due_date_complete

Marque la date comme complétée

list_cards_by_due_date

Liste les cartes triées par date

✅ Gestion des Checklists (5 outils)

Outil

Description

add_checklist_to_card

Crée une nouvelle checklist

add_checklist_item

Ajoute un item Ă  une checklist

check_checklist_item

Coche/décoche un item

get_checklist_progress

RécupÚre la progression détaillée

delete_checklist

Supprime une checklist ⚠

đŸ‘„ Gestion des Membres (4 outils)

Outil

Description

get_board_members

Liste tous les membres d'un board

add_member_to_card

Assigne un membre Ă  une carte

remove_member_from_card

Retire l'assignation d'un membre

get_member_cards

Liste les cartes assignées à un membre

📎 Gestion des Attachments (4 outils) 🆕

Outil

Description

add_attachment_url

Ajoute un attachment par URL

list_attachments

Liste tous les attachments d'une carte

delete_attachment

Supprime un attachment dĂ©finitivement ⚠

set_card_cover

Définit ou retire le cover d'une carte

📩 OpĂ©rations en Masse (4 outils) 🆕

Outil

Description

bulk_archive_cards

Archive plusieurs cartes en une fois

bulk_move_cards

Déplace plusieurs cartes vers une liste

bulk_add_label

Ajoute un label Ă  plusieurs cartes

bulk_assign_member

Assigne un membre Ă  plusieurs cartes

Total : 42 outils (33 → 42 en v2.1.0)


📩 Installation

🚀 Installation Rapide avec Bundle MCPB (RecommandĂ©)

Installation en 1 clic pour Claude Desktop !

  1. Télécharger le bundle : Trello_MCP.mcpb (3.0 MB)

  2. Installer :

    • Option A : Double-cliquer sur le fichier .mcpb (macOS/Windows)

    • Option B : Dans Claude Desktop → Settings → Extensions → Advanced → Install from file

  3. Configurer vos credentials Trello :

  4. C'est tout ! 🎉 Le serveur MCP est installĂ© et prĂȘt Ă  l'emploi.

Vérification :

"Liste tous mes boards Trello" → Claude affiche vos boards

đŸ› ïž Installation Manuelle (DĂ©veloppeurs)

Prérequis :

Étapes :

# Cloner le repository
git clone https://github.com/JulianKerignard/Trello_MCP.git
cd Trello_MCP

# Installer les dépendances
npm install --production

# Compiler le projet
npm run build

🔑 Configuration

Étape 1 : Obtenir vos credentials Trello

  1. Rendez-vous sur https://trello.com/power-ups/admin

  2. Créez un Power-Up (si nécessaire)

  3. Cliquez sur "Generate a new API Key"

  4. Notez votre API Key 📝

  5. Cliquez sur "Token" pour générer un API Token

  6. Accordez les permissions read et write

  7. Notez votre Token 📝

Étape 2 : Configurer les credentials

Option A : Fichier .env (développement local)

cp .env.example .env

Éditez .env et ajoutez vos credentials :

TRELLO_API_KEY=votre_api_key_ici
TRELLO_API_TOKEN=votre_token_ici

Option B : Claude Desktop (recommandé)

Éditez le fichier de configuration :

  • macOS : ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows : %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "trello": {
      "command": "node",
      "args": [
        "/chemin/absolu/vers/trello-mcp-server/build/index.js"
      ],
      "env": {
        "TRELLO_API_KEY": "votre_api_key",
        "TRELLO_API_TOKEN": "votre_token"
      }
    }
  }
}

⚠ Important : Utilisez le chemin absolu vers build/index.js

Étape 3 : RedĂ©marrer Claude Desktop

Fermez et relancez Claude Desktop pour charger le serveur MCP.


💬 Utilisation

Exemples avec Claude Desktop

Vous : "Liste tous mes boards Trello"
Claude : [Utilise list_trello_boards et affiche vos boards]

Vous : "Crée un board 'Projet Marketing' avec 3 lists : Backlog, En cours, Terminé"
Claude : [Crée automatiquement le board et les 3 lists]

Vous : "Ajoute une carte 'Rédiger article blog' dans To Do avec une description"
Claude : [Crée la carte avec la description demandée]

Vous : "Déplace la carte 'Task X' vers Done"
Claude : [Déplace la carte automatiquement]

Vous : "Archive toutes les cartes terminées"
Claude : [Archive les cartes identifiées]

Vous : "Cherche les cartes qui contiennent 'bug'"
Claude : [Recherche et affiche les résultats]

⚠ Gestion de l'archivage vs suppression

✅ RECOMMANDÉ : Archiver d'abord
Vous : "Archive la carte 'Ancienne tĂąche'"
→ Carte archivĂ©e (rĂ©versible)

⚠ ATTENTION : Suppression dĂ©finitive
Vous : "Supprime définitivement la carte 'Spam'"
→ Carte supprimĂ©e (IRRÉVERSIBLE)

💡 Workflow optimal :
1. Archiver les cartes terminées
2. Vérifier aprÚs quelques jours
3. Supprimer seulement si vraiment inutile

đŸ› ïž DĂ©veloppement

Structure du projet (v2.0.0 - Architecture Handler Registry)

trello-mcp-server/
├── src/
│   ├── index.ts                      # Point d'entrĂ©e (175 lignes, -90% vs v1.x)
│   ├── trello-client.ts              # Client API Trello avec gestion d'erreurs
│   ├── types.ts                      # DĂ©finitions TypeScript principales
│   ├── logger.ts                     # Configuration Pino logging
│   └── handlers/                     # 🆕 Architecture modulaire (v2.0.0)
│       ├── types.ts                  # Interfaces ToolHandler, ValidationRule
│       ├── base-handler.ts           # Classe abstraite avec validation
│       ├── tool-registry.ts          # Registre central (Map-based)
│       ├── index.ts                  # Registration des 33 handlers
│       ├── boards-handlers.ts        # 2 handlers boards
│       ├── lists-handlers.ts         # 2 handlers lists
│       ├── cards-handlers.ts         # 11 handlers cards
│       ├── labels-handlers.ts        # 5 handlers labels
│       ├── dates-handlers.ts         # 4 handlers dates
│       ├── checklists-handlers.ts    # 5 handlers checklists
│       └── members-handlers.ts       # 4 handlers members
├── build/                            # Code JavaScript compilĂ©
├── .env.example                      # Template pour les variables d'environnement
├── tsconfig.json                     # Configuration TypeScript
├── package.json                      # DĂ©pendances et scripts
├── CHANGELOG.md                      # Historique des versions
└── README.md

🎯 Avantages de l'architecture v2.0.0 :

  • ✅ MaintenabilitĂ© : Code modulaire par domaine (boards, cards, labels, etc.)

  • ✅ ExtensibilitĂ© : Ajout de nouveaux outils sans modifier index.ts

  • ✅ Type Safety : GĂ©nĂ©riques TypeScript <TArgs, TResult>

  • ✅ Validation centralisĂ©e : ValidationRule dĂ©clarative

  • ✅ Performance : Lookup O(1) via Map (vs 33 if-statements)

  • ✅ DRY : Duplication ~70% → ~5%

Scripts disponibles

# Build & Développement
npm run build         # Compile TypeScript → JavaScript
npm run watch         # Compile en mode watch (développement)
npm run dev           # Build + démarre le serveur
npm run inspector     # Démarre avec MCP Inspector (debug)
npm start             # Démarre le serveur (requiert build préalable)

# Tests & Qualité (v2.0.0)
npm test              # Execute les tests unitaires (36 tests)
npm run test:watch    # Tests en mode watch
npm run test:ui       # Interface UI pour les tests
npm run test:coverage # Tests avec couverture de code
npm run typecheck     # Vérifie les types sans compiler
npm run lint          # Vérifie le code (ESLint)
npm run lint:fix      # Corrige automatiquement les erreurs ESLint
npm run format        # Formate le code (Prettier)

# Bundle & Distribution
npm run pack:mcpb     # Crée le bundle .mcpb pour distribution
npm run clean         # Nettoie build/ node_modules/ *.mcpb
npm run clean:build   # Nettoie uniquement build/

Développement avec MCP Inspector

L'MCP Inspector permet de tester les outils interactivement :

npm run inspector

Ouvrez votre navigateur à l'URL affichée pour tester chaque outil.

Tests manuels

# Test rapide
npm run dev

# Le serveur affichera :
# ✅ Trello MCP Server v2.0.0 dĂ©marrĂ© avec succĂšs
# 📋 33 outils disponibles: boards (2), lists (2), cards (11),
#    labels (5), dates (4), checklists (5), members (4)
# 🔐 AuthentifiĂ© avec l'API Trello
# đŸ—ïž Architecture: Handler Registry Pattern

📚 Documentation

Architecture MCP

Ce serveur implémente la spécification Model Context Protocol 2025-06-18. Il expose des outils (tools) que les LLM peuvent appeler pour interagir avec Trello.

Gestion des erreurs

Le serveur gĂšre automatiquement :

  • ✅ Authentification invalide (401)

  • ✅ Ressources non trouvĂ©es (404)

  • ✅ Rate limiting Trello (429)

  • ✅ Validation des IDs (24 caractĂšres)

  • ✅ Connexion rĂ©seau

Tous les messages d'erreur sont en français et explicites.

API Trello

Ce serveur utilise l'API REST Trello v1. Points importants :

  • Base URL : https://api.trello.com/1

  • Authentification : API Key + Token (OAuth 1.0)

  • Rate Limits : 300 requĂȘtes / 10 secondes / token

  • Timeout : 30 secondes par requĂȘte


đŸ—ș Roadmap

📋 Voir la Roadmap complùte sur Trello

Consultez notre board Trello pour suivre en temps réel les fonctionnalités terminées, en cours de développement et prévues !

Version actuelle : 1.4.0 ✅

Toutes les fonctionnalités de la v1.4 sont disponibles :

  • ✅ Gestion complĂšte des Boards (2 outils)

  • ✅ Gestion complĂšte des Lists (2 outils)

  • ✅ Gestion complĂšte des Cards (11 outils)

    • CRUD de base (crĂ©er, lire, commenter)

    • DĂ©placement et recherche de cartes

    • Modification (nom, description)

    • Archivage et suppression

    • DĂ©tails complets avec membres, checklists, attachments

  • ✅ Gestion des Labels (5 outils)

    • CrĂ©er, modifier, supprimer des labels

    • Ajouter/retirer des labels sur les cartes

    • Support des prioritĂ©s P1/P2/P3/P4

  • ✅ Gestion des Dates (4 outils)

    • DĂ©finir et supprimer des dates limites

    • Marquer comme complĂ©tĂ©

    • Tri par date d'Ă©chĂ©ance

📋 Prochaines versions (v2.0)

  • đŸ‘„ Gestion des Membres (assignation)

  • ☑ Gestion des Checklists (sous-tĂąches)

  • 📎 PiĂšces Jointes (fichiers et liens)

  • ⚡ OpĂ©rations en Masse (bulk)

Consultez la board Roadmap pour voir les détails et priorités de chaque feature.


đŸ€ Contribution

Les contributions sont les bienvenues ! Voici comment contribuer :

Rapporter un bug

Ouvrez une issue avec :

  • Description du problĂšme

  • Étapes pour reproduire

  • Version de Node.js et du serveur

  • Logs pertinents

Proposer une fonctionnalité

Ouvrez une issue avec :

  • Description de la fonctionnalitĂ©

  • Cas d'usage

  • Proposition d'implĂ©mentation (optionnel)

Soumettre du code

  1. Fork le projet

  2. Créez une branche (git checkout -b feature/AmazingFeature)

  3. Committez vos changements (git commit -m 'Add AmazingFeature')

  4. Pushez vers la branche (git push origin feature/AmazingFeature)

  5. Ouvrez une Pull Request


📄 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.


🙏 Remerciements

  • Anthropic pour Claude et le Model Context Protocol

  • Trello pour leur excellente API

  • La communautĂ© MCP pour les exemples et la documentation


📞 Support

Besoin d'aide ?


Fait avec ❀ pour la communautĂ© MCP

⭐ Si ce projet vous est utile, n'hésitez pas à lui donner une étoile !

Available Tools

45 tools
add_attachment_urlB

Ajoute un attachment Ă  une carte via URL

Inputs: url (required), cardId (required), name, setCover.

add_card_commentA

Ajoute un commentaire Ă  une carte Trello

Inputs: text (required), cardId (required).

add_checklist_itemC

Ajoute un item Ă  une checklist existante

Inputs: name (required), checklistId (required), pos, checked.

add_checklist_to_cardB

Crée une nouvelle checklist sur une carte Trello

Inputs: name (required), cardId (required), pos.

add_label_to_cardB

Ajoute un label Ă  une carte Trello

Inputs: cardId (required), labelId (required).

add_member_to_cardB

Assigne un membre Ă  une carte Trello

Inputs: cardId (required), memberId (required).

archive_cardA

Archive une carte Trello (rĂ©versible, peut ĂȘtre dĂ©sarchivĂ©e)

Inputs: cardId (required).

bulk_add_labelA

Ajoute un label Ă  plusieurs cartes en une fois

Inputs: cardIds (required), labelId (required).

bulk_archive_cardsA

Archive plusieurs cartes en une fois (batch processing avec rate limiting)

Inputs: cardIds (required).

bulk_assign_memberC

Assigne un membre Ă  plusieurs cartes en une fois

Inputs: cardIds (required), memberId (required).

bulk_move_cardsA

Déplace plusieurs cartes vers une liste en une fois

Inputs: cardIds (required), targetListId (required), position.

check_checklist_itemB

Coche ou décoche un item d'une checklist

Inputs: state (required), cardId (required), checkItemId (required).

close_boardA

Archive un board Trello (rĂ©versible, peut ĂȘtre rĂ©ouvert)

Inputs: boardId (required).

create_labelC

Crée un nouveau label sur un board Trello

Inputs: name (required), color (required), boardId (required).

create_trello_boardC

Crée un nouveau board Trello

Inputs: name (required), desc.

create_trello_cardB

Crée une nouvelle carte dans une list Trello

Inputs: name (required), listId (required), desc.

create_trello_listB

Crée une nouvelle list (colonne) sur un board Trello

Inputs: name (required), boardId (required).

delete_attachmentA

⚠ Supprime dĂ©finitivement un attachment (irrĂ©versible)

Inputs: cardId (required), attachmentId (required).

delete_boardA

⚠ SUPPRIME DÉFINITIVEMENT un board Trello (IRRÉVERSIBLE). Recommandation: archivez d'abord avec close_board

Inputs: boardId (required).

delete_cardA

⚠ SUPPRIME DÉFINITIVEMENT une carte Trello (IRRÉVERSIBLE). Recommandation: archivez d'abord avec archive_card

Inputs: cardId (required).

delete_checklistA

⚠ SUPPRIME DÉFINITIVEMENT une checklist (irrĂ©versible)

Inputs: checklistId (required).

duplicate_cardC

Duplique une carte avec options sélectives (attachments, checklists, labels, etc.)

Inputs: cardId (required), targetListId (required), keepDue, newDesc, +7 more.

get_board_membersA

Liste tous les membres d'un board Trello avec leurs informations

Inputs: boardId (required).

get_card_detailsA

RécupÚre tous les détails d'une carte (membres, labels, checklists, dates, piÚces jointes, etc.)

Inputs: cardId (required).

get_checklist_progressA

RécupÚre la progression de toutes les checklists d'une carte avec statistiques détaillées

Inputs: cardId (required).

get_member_cardsA

Liste toutes les cartes assignées à un membre, optionnellement filtrées par board

Inputs: memberId (required), boardId.

list_attachmentsB

Liste tous les attachments d'une carte

Inputs: cardId (required).

list_cards_by_due_dateA

Liste toutes les cartes d'un board qui ont une date limite, triées par échéance (les plus urgentes en premier)

Inputs: boardId (required).

list_labelsB

Liste tous les labels d'un board Trello

Inputs: boardId (required).

list_trello_boardsA

Liste tous les boards Trello accessibles à l'utilisateur authentifié

Inputs: no named parameters.

list_trello_cardsA

Liste toutes les cartes (cards) d'une list Trello spécifique

Inputs: listId (required).

list_trello_listsA

Liste toutes les lists (colonnes) d'un board Trello spécifique

Inputs: boardId (required).

mark_due_date_completeB

Marque la date limite d'une carte comme complétée (ou non complétée)

Inputs: cardId (required), complete.

move_trello_cardB

Déplace une carte Trello vers une autre list et/ou change sa position

Inputs: cardId (required), targetListId (required), position.

remove_card_due_dateA

Retire la date limite d'une carte Trello

Inputs: cardId (required).

remove_label_from_cardB

Retire un label d'une carte Trello

Inputs: cardId (required), labelId (required).

remove_member_from_cardC

Retire l'assignation d'un membre d'une carte Trello

Inputs: cardId (required), memberId (required).

reopen_boardB

Réouvre un board Trello archivé

Inputs: boardId (required).

search_trello_cardsC

Recherche des cartes Trello par nom, description ou autres critĂšres

Inputs: query (required), limit, partial, boardIds.

set_card_coverB

Définit ou retire le cover d'une carte (via attachment)

Inputs: cardId (required), attachmentId.

set_card_due_dateC

Définit une date limite (deadline) sur une carte Trello

Inputs: cardId (required), dueDate (required).

unarchive_cardA

Désarchive une carte Trello (set closed to false)

Inputs: cardId (required).

update_card_descriptionB

Met Ă  jour la description d'une carte Trello existante

Inputs: cardId (required), description (required).

update_card_nameC

Modifie le nom/titre d'une carte Trello

Inputs: name (required), cardId (required).

update_labelB

Modifie un label existant (nom et/ou couleur)

Inputs: labelId (required), name, color.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog


    TDQS

    B3.2/5.0

    Scored across 45 tools

    Disambiguation4/5

    Most tools target a distinct resource and action, and the single vs bulk variants (e.g., add_member_to_card vs bulk_assign_member) are sufficiently distinct in intent. A few close pairs such as list_trello_cards and list_cards_by_due_date could be confused, but descriptions clarify the difference.

    Naming Consistency4/5

    Tool names follow a mostly consistent verb_noun snake_case pattern and are readable. Minor deviations exist: the Trello prefix appears inconsistently (list_trello_boards vs list_labels), and close_board/archive_card use different verbs for the same archive concept.

    Tool Count2/5

    45 tools is well above the 25+ threshold and creates navigation overhead for an agent. The bulk-versus-single duplicate pairs inflate the count without adding distinct tool types; the set would benefit from consolidation.

    Completeness3/5

    Core board/card workflows are well covered, including lifecycle operations, labels, checklists, attachments, membership, due dates, and bulk actions. Obvious gaps remain: labels cannot be deleted, lists have no update/archive operations, and boards lack update/get-detail tools.

    Related MCP Connectors

    Related MCP Servers