MCP Server Trello

Integrations

  • Enables comprehensive Trello board management with capabilities for interacting with cards, lists, and board activities. Supports creating and updating cards, managing lists, tracking recent activity, and handling assigned tasks while respecting Trello's API rate limits.

MCP サーバー Trello

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

特徴

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

インストール

npm install @modelcontextprotocol/mcp-server-trello

構成

次の構成でサーバーを MCP 設定ファイルに追加します。

{ "mcpServers": { "trello": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-trello"], "env": { "TRELLO_API_KEY": "your-api-key", "TRELLO_TOKEN": "your-token", "TRELLO_BOARD_ID": "your-board-id" } } } }

必要な環境変数

  • TRELLO_API_KEY : Trello API キー ( https://trello.com/app-keyから取得)
  • TRELLO_TOKEN : Trelloトークン(APIキーを使用して生成)
  • TRELLO_BOARD_ID : 対話するTrelloボードのID(ボードURLで見つかります)

利用可能なツール

リスト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: {} }

レート制限

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

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

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

エラー処理

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

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

発達

前提条件

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

設定

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

テストの実行

npm test

貢献

貢献を歓迎します!行動規範とプルリクエストの送信手順の詳細については、貢献ガイドをお読みください。

ライセンス

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

謝辞

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Trello ボードとのシームレスな統合を可能にし、レート制限を自動的に処理し、型の安全性を提供しながら、ユーザーがカード、リスト、アクティビティを管理できるようにします。

  1. Features
    1. Installation
      1. Configuration
        1. Required Environment Variables
      2. Available Tools
        1. get_cards_by_list_id
        2. get_lists
        3. get_recent_activity
        4. add_card_to_list
        5. update_card_details
        6. archive_card
        7. add_list_to_board
        8. archive_list
        9. get_my_cards
      3. Rate Limiting
        1. Error Handling
          1. Development
            1. Prerequisites
            2. Setup
            3. Running Tests
          2. Contributing
            1. License
              1. Acknowledgments
                ID: 4q0b9jcp2f