MCP Server Trello

Integrations
  • Provides tools for interacting with Trello boards, including fetching cards and lists, adding new cards and lists, updating card details, archiving cards and lists, and fetching recent activity.

MCP-Server Trello

Ein Model Context Protocol (MCP)-Server, der Tools für die Interaktion mit Trello-Boards bereitstellt. Dieser Server ermöglicht die nahtlose Integration mit der Trello-API und übernimmt automatisch Ratenbegrenzung, Typsicherheit und Fehlerbehandlung.

Änderungsprotokoll

0.3.0

  • Funktionen zur Board- und Arbeitsbereichsverwaltung hinzugefügt:
    • list_boards – Listet alle Boards auf, auf die der Benutzer Zugriff hat
    • set_active_board - Legt das aktive Board für zukünftige Operationen fest
    • list_workspaces – Listet alle Arbeitsbereiche auf, auf die der Benutzer Zugriff hat
    • set_active_workspace - Aktiven Arbeitsbereich für zukünftige Operationen festlegen
    • list_boards_in_workspace – Listet alle Boards in einem bestimmten Arbeitsbereich auf
    • get_active_board_info - Informationen zum aktuell aktiven Board abrufen
  • Permanenter Konfigurationsspeicher hinzugefügt, um aktives Board/Arbeitsbereich zu speichern
  • Verbesserte Fehlerbehandlung für alle neuen Operationen

0.2.1

  • Detaillierte JSDoc-Kommentare zu Rate-Limiter-Funktionen hinzugefügt
  • Verbesserte Fehlerbehandlung für die Bildanhangfunktion
  • Aktualisierte Dokumentation für das Tool „attach_image_to_card“

0.2.0

  • Tool attach_image_to_card hinzugefügt, um Bilder von URLs an Karten anzuhängen
  • Docker-Unterstützung mit mehrstufigem Build hinzugefügt
  • Verbesserte Sicherheit durch Verschieben von Umgebungsvariablen nach .env
  • Docker Compose-Konfiguration hinzugefügt
  • .env.template für einfachere Einrichtung hinzugefügt

0.1.1

  • move_card Tool zum Verschieben von Karten zwischen Listen hinzugefügt
  • Verbesserte Dokumentation

0.1.0

  • Erstveröffentlichung mit grundlegenden Trello-Board-Verwaltungsfunktionen

Merkmale

  • Vollständige Trello-Board-Integration : Interagieren Sie mit Karten, Listen und Board-Aktivitäten
  • Integrierte Ratenbegrenzung : Respektiert die API-Begrenzungen von Trello (300 Anfragen/10 s pro API-Schlüssel, 100 Anfragen/10 s pro Token)
  • Typsichere Implementierung : Geschrieben in TypeScript mit umfassenden Typdefinitionen
  • Eingabevalidierung : Robuste Validierung für alle API-Eingaben
  • Fehlerbehandlung : Angenehme Fehlerbehandlung mit informativen Meldungen
  • Dynamische Boardauswahl : Wechseln Sie zwischen Boards und Arbeitsbereichen ohne Neustart

Installation

Docker-Installation (empfohlen)

Der einfachste Weg, den Server auszuführen, ist die Verwendung von Docker:

  1. Klonen Sie das Repository:
git clone https://github.com/delorenj/mcp-server-trello cd mcp-server-trello
  1. Kopieren Sie die Umgebungsvorlage und geben Sie Ihre Trello-Anmeldeinformationen ein:
cp .env.template .env
  1. Erstellen und Ausführen mit Docker Compose:
docker compose up --build

Installation über Smithery

So installieren Sie Trello Server für Claude Desktop automatisch über Smithery :

npx -y @smithery/cli install @modelcontextprotocol/mcp-server-trello --client claude

Manuelle Installation

npm install @delorenj/mcp-server-trello

Konfiguration

Umgebungsvariablen

Der Server kann mithilfe von Umgebungsvariablen konfiguriert werden. Erstellen Sie im Stammverzeichnis eine .env Datei mit den folgenden Variablen:

# Required: Your Trello API credentials TRELLO_API_KEY=your-api-key TRELLO_TOKEN=your-token # Required: Initial board ID (can be changed later using set_active_board) TRELLO_BOARD_ID=your-board-id # Optional: Initial workspace ID (can be changed later using set_active_workspace) TRELLO_WORKSPACE_ID=your-workspace-id

Sie können diese Werte erhalten von:

Board- und Arbeitsbereichsverwaltung

Ab Version 0.3.0 unterstützt der MCP-Server die dynamische Auswahl von Boards und Arbeitsbereichen:

  • Die TRELLO_BOARD_ID in Ihrer .env Datei wird als anfängliche Board-ID verwendet, wenn der Server startet
  • Sie können das aktive Board jederzeit mit dem Tool set_active_board ändern
  • Das ausgewählte Board bleibt zwischen Serverneustarts bestehen (gespeichert in ~/.trello-mcp/config.json )
  • Ebenso können Sie einen aktiven Arbeitsbereich mit set_active_workspace festlegen und beibehalten.

Auf diese Weise können Sie mit mehreren Boards und Arbeitsbereichen arbeiten, ohne den Server neu zu starten oder Umgebungsvariablen zu ändern.

Beispiel-Workflow
  1. Beginnen Sie mit der Auflistung der verfügbaren Boards:
{ name: 'list_boards', arguments: {} }
  1. Legen Sie Ihr aktives Board fest:
{ name: 'set_active_board', arguments: { boardId: "abc123" // ID from list_boards response } }
  1. Listen Sie bei Bedarf Arbeitsbereiche auf:
{ name: 'list_workspaces', arguments: {} }
  1. Legen Sie bei Bedarf den aktiven Arbeitsbereich fest:
{ name: 'set_active_workspace', arguments: { workspaceId: "xyz789" // ID from list_workspaces response } }
  1. Überprüfen Sie die aktuellen aktiven Boardinformationen:
{ name: 'get_active_board_info', arguments: {} }

Verfügbare Tools

Karten nach Listen-ID abrufen

Holen Sie sich alle Karten aus einer bestimmten Liste.

{ name: 'get_cards_by_list_id', arguments: { listId: string // ID of the Trello list } }

Listen abrufen

Rufen Sie alle Listen vom aktuell aktiven Board ab.

{ name: 'get_lists', arguments: {} }

get_recent_activity

Rufen Sie die aktuelle Aktivität auf dem derzeit aktiven Board ab.

{ name: 'get_recent_activity', arguments: { limit?: number // Optional: Number of activities to fetch (default: 10) } }

Karte zur Liste hinzufügen

Fügen Sie einer angegebenen Liste eine neue Karte hinzu.

{ name: 'add_card_to_list', arguments: { listId: string, // ID of the list to add the card to name: string, // Name of the card description?: string, // Optional: Description of the card dueDate?: string, // Optional: Due date (ISO 8601 format) labels?: string[] // Optional: Array of label IDs } }

Kartendetails aktualisieren

Aktualisieren Sie die Details einer vorhandenen Karte.

{ name: 'update_card_details', arguments: { cardId: string, // ID of the card to update name?: string, // Optional: New name for the card description?: string, // Optional: New description dueDate?: string, // Optional: New due date (ISO 8601 format) labels?: string[] // Optional: New array of label IDs } }

Archivkarte

Senden Sie eine Karte an das Archiv.

{ name: 'archive_card', arguments: { cardId: string // ID of the card to archive } }

Liste zum Board hinzufügen

Fügen Sie dem aktuell aktiven Board eine neue Liste hinzu.

{ name: 'add_list_to_board', arguments: { name: string // Name of the new list } }

Archivliste

Senden Sie eine Liste an das Archiv.

{ name: 'archive_list', arguments: { listId: string // ID of the list to archive } }

hol_meine_Karten

Alle dem aktuellen Benutzer zugewiesenen Karten abrufen.

{ name: 'get_my_cards', arguments: {} }

Karte verschieben

Verschieben Sie eine Karte in eine andere Liste.

{ name: 'move_card', arguments: { cardId: string, // ID of the card to move listId: string // ID of the target list } }

Bild an Karte anhängen

Fügen Sie einer Karte direkt von einer URL ein Bild hinzu.

{ name: 'attach_image_to_card', arguments: { cardId: string, // ID of the card to attach the image to imageUrl: string, // URL of the image to attach name?: string // Optional: Name for the attachment (defaults to "Image Attachment") } }

list_boards

Listet alle Boards auf, auf die der Benutzer Zugriff hat.

{ name: 'list_boards', arguments: {} }

setze_active_board

Legen Sie das aktive Board für zukünftige Vorgänge fest.

{ name: 'set_active_board', arguments: { boardId: string // ID of the board to set as active } }

Liste_Arbeitsbereiche

Listen Sie alle Arbeitsbereiche auf, auf die der Benutzer Zugriff hat.

{ name: 'list_workspaces', arguments: {} }

Aktiven Arbeitsbereich festlegen

Legen Sie den aktiven Arbeitsbereich für zukünftige Vorgänge fest.

{ name: 'set_active_workspace', arguments: { workspaceId: string // ID of the workspace to set as active } }

Liste_Boards_im_Arbeitsbereich

Listet alle Boards in einem bestimmten Arbeitsbereich auf.

{ name: 'list_boards_in_workspace', arguments: { workspaceId: string // ID of the workspace to list boards from } }

Informationen zum aktiven Board abrufen

Informieren Sie sich über das aktuell aktive Board.

{ name: 'get_active_board_info', arguments: {} }

Ratenbegrenzung

Der Server implementiert einen Token-Bucket-Algorithmus zur Ratenbegrenzung, um die API-Begrenzungen von Trello einzuhalten:

  • 300 Anfragen pro 10 Sekunden pro API-Schlüssel
  • 100 Anfragen pro 10 Sekunden pro Token

Die Ratenbegrenzung wird automatisch durchgeführt und Anfragen werden in die Warteschlange gestellt, wenn die Begrenzungen erreicht sind.

Fehlerbehandlung

Der Server liefert detaillierte Fehlermeldungen für verschiedene Szenarien:

  • Ungültige Eingabeparameter
  • Ratenlimit überschritten
  • API-Authentifizierungsfehler
  • Netzwerkprobleme
  • Ungültige Board-/Listen-/Karten-IDs

Entwicklung

Voraussetzungen

  • Node.js 16 oder höher
  • npm oder yarn

Aufstellen

  1. Klonen Sie das Repository
git clone https://github.com/delorenj/mcp-server-trello cd mcp-server-trello
  1. Abhängigkeiten installieren
npm install
  1. Erstellen des Projekts
npm run build

Beitragen

Beiträge sind willkommen!

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

Danksagung

Related MCP Servers

  • A
    security
    F
    license
    A
    quality
    Enables interaction with Trello boards, lists, and cards through Model Context Protocol (MCP) tools, leveraging TypeScript for type safety and asynchronous operations.
    Last updated -
    5
    JavaScript
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server that provides tools for interacting with Trello boards, enabling seamless management of cards, lists, and activities while handling rate limiting and type safety.
    Last updated -
    10
    3
    JavaScript
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    Connects to Trello with all the tools available that I was able to find in API reference
    Last updated -
    3
    1
    TypeScript
    MIT License
  • -
    security
    F
    license
    -
    quality
    Enables Magic: The Gathering players to manage decks and access card information through Claude, supporting gameplay actions like drawing cards and mulligans while providing Scryfall API integration for card lookups.
    Last updated -
    Python

View all related MCP servers

ID: klqkamy7wt