Skip to main content
Glama

MCP Server Trello

MCP サーバー Trello

Trelloボードを操作するためのツールを提供するModel Context Protocol(MCP)サーバー。このサーバーは、レート制限、型安全性、エラー処理を自動的に処理しながら、Trello APIとのシームレスな統合を実現します。

変更履歴

0.3.0

  • ボードとワークスペースの管理機能が追加されました:
    • list_boards - ユーザーがアクセスできるすべてのボードを一覧表示します
    • set_active_board - 今後の操作のためにアクティブなボードを設定する
    • list_workspaces - ユーザーがアクセスできるすべてのワークスペースを一覧表示します
    • set_active_workspace - 将来の操作のためにアクティブなワークスペースを設定する
    • list_boards_in_workspace - 特定のワークスペース内のすべてのボードを一覧表示します
    • get_active_board_info - 現在アクティブなボードに関する情報を取得します
  • アクティブなボード/ワークスペースを記憶するための永続的な構成ストレージを追加しました
  • すべての新規操作のエラー処理の改善

0.2.1

  • レート制限機能に詳細な JSDoc コメントを追加しました
  • 画像添付機能のエラー処理の改善
  • attach_image_to_card ツールのドキュメントを更新しました

0.2.0

  • URL からカードに画像を添付するためのattach_image_to_cardツールを追加しました
  • マルチステージビルドによるDockerサポートを追加
  • 環境変数を.envに移動することでセキュリティが強化されました
  • Docker Compose 構成を追加しました
  • セットアップを簡単にするために.env.templateを追加しました

0.1.1

  • リスト間でカードを移動するためのmove_cardツールを追加しました
  • ドキュメントの改善

0.1.0

  • 基本的なTrelloボード管理機能を備えた初期リリース

特徴

  • Trelloボードとの完全な統合:カード、リスト、ボードアクティビティを操作
  • 組み込みのレート制限: Trello の API 制限 (API キーあたり 300 リクエスト/10 秒、トークンあたり 100 リクエスト/10 秒) を尊重
  • 型安全な実装:包括的な型定義を備えたTypeScriptで記述
  • 入力検証: すべてのAPI入力に対する堅牢な検証
  • エラー処理: 情報メッセージによる適切なエラー処理
  • ダイナミックボード選択: 再起動せずにボードとワークスペースを切り替える

インストール

Docker のインストール (推奨)

サーバーを実行する最も簡単な方法は Docker を使用することです。

  1. リポジトリをクローンします。
git clone https://github.com/delorenj/mcp-server-trello cd mcp-server-trello
  1. 環境テンプレートをコピーし、Trello の資格情報を入力します。
cp .env.template .env
  1. Docker Compose でビルドして実行します。
docker compose up --build

Smithery経由でインストール

Smithery経由で Claude Desktop 用の Trello Server を自動的にインストールするには:

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

手動インストール

npm install @delorenj/mcp-server-trello

構成

環境変数

サーバーは環境変数を使って設定できます。ルートディレクトリに以下の変数を含む.envファイルを作成してください。

# 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

これらの値は以下から取得できます。

ボードとワークスペースの管理

バージョン 0.3.0 以降、MCP サーバーは動的なボードとワークスペースの選択をサポートします。

  • .envファイル内のTRELLO_BOARD_IDは、サーバーの起動時に初期ボードIDとして使用されます。
  • set_active_boardツールを使用すると、いつでもアクティブボードを変更できます。
  • 選択されたボードはサーバーの再起動後も保持されます( ~/.trello-mcp/config.jsonに保存されます)。
  • 同様に、 set_active_workspaceを使用してアクティブなワークスペースを設定して保持することができます。

これにより、サーバーを再起動したり環境変数を変更したりせずに、複数のボードとワークスペースを操作できるようになります。

ワークフローの例
  1. 利用可能なボードをリストすることから始めます。
{ name: 'list_boards', arguments: {} }
  1. アクティブボードを設定します:
{ name: 'set_active_board', arguments: { boardId: "abc123" // ID from list_boards response } }
  1. 必要に応じてワークスペースを一覧表示します。
{ name: 'list_workspaces', arguments: {} }
  1. 必要に応じてアクティブなワークスペースを設定します。
{ name: 'set_active_workspace', arguments: { workspaceId: "xyz789" // ID from list_workspaces response } }
  1. 現在アクティブなボード情報を確認します:
{ name: 'get_active_board_info', arguments: {} }

利用可能なツール

リストIDでカードを取得する

特定のリストからすべてのカードを取得します。

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

get_lists

現在アクティブなボードからすべてのリストを取得します。

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

最近のアクティビティを取得する

現在アクティブなボード上の最近のアクティビティを取得します。

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

リストにカードを追加

指定されたリストに新しいカードを追加します。

{ 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 } }

カード詳細の更新

既存のカード詳細を更新します。

{ 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 } }

アーカイブカード

カードをアーカイブに送信します。

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

ボードにリストを追加

現在アクティブなボードに新しいリストを追加します。

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

アーカイブリスト

リストをアーカイブに送信します。

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

カードを取得する

現在のユーザーに割り当てられているすべてのカードを取得します。

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

移動カード

カードを別のリストに移動します。

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

カードに画像を添付する

URL から直接カードを添付します。

{ 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") } }

リストボード

ユーザーがアクセスできるすべてのボードを一覧表示します。

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

アクティブボードを設定する

今後の操作のためにアクティブ ボードを設定します。

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

ワークスペースの一覧

ユーザーがアクセスできるすべてのワークスペースを一覧表示します。

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

アクティブワークスペースを設定する

今後の操作のためにアクティブなワークスペースを設定します。

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

ワークスペース内のボード一覧

特定のワークスペース内のすべてのボードを一覧表示します。

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

アクティブボード情報を取得する

現在アクティブなボードに関する情報を取得します。

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

レート制限

サーバーは、Trello の API 制限に準拠するために、レート制限用のトークン バケット アルゴリズムを実装します。

  • APIキーごとに10秒あたり300リクエスト
  • トークンごとに10秒あたり100リクエスト

レート制限は自動的に処理され、制限に達した場合、リクエストはキューに入れられます。

エラー処理

サーバーは、さまざまなシナリオに対して詳細なエラー メッセージを提供します。

  • 無効な入力パラメータ
  • レート制限を超えました
  • API認証エ��ー
  • ネットワークの問題
  • 無効なボード/リスト/カードID

発達

前提条件

  • Node.js 16以上
  • npmまたはyarn

設定

  1. リポジトリをクローンする
git clone https://github.com/delorenj/mcp-server-trello cd mcp-server-trello
  1. 依存関係をインストールする
npm install
  1. プロジェクトを構築する
npm run build

貢献

貢献を歓迎します!

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。

謝辞

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 -
    1
  • 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 -
    11
    MIT License
    • Apple
  • A
    security
    A
    license
    A
    quality
    Connects to Trello with all the tools available that I was able to find in API reference
    Last updated -
    15
    24
    17
    MIT License
  • A
    security
    A
    license
    A
    quality
    Enables seamless integration with Trello boards, allowing users to manage cards, lists, and activities while automatically handling rate limiting and providing type safety.
    Last updated -
    9
    MIT License

View all related MCP servers

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/delorenj/mcp-server-trello'

If you have feedback or need assistance with the MCP directory API, please join our Discord server