MCP サーバー Trello
Trelloボードを操作するためのツールを提供するModel Context Protocol(MCP)サーバー。このサーバーは、レート制限、型安全性、エラー処理を自動的に処理しながら、Trello APIとのシームレスな統合を実現します。
特徴
Trelloボードとの完全な統合:カード、リスト、ボードアクティビティを操作
組み込みのレート制限: Trello の API 制限 (API キーあたり 300 リクエスト/10 秒、トークンあたり 100 リクエスト/10 秒) を尊重
型安全な実装:包括的な型定義を備えたTypeScriptで記述
入力検証: すべてのAPI入力に対する堅牢な検証
エラー処理: 情報メッセージによる適切なエラー処理
Related MCP server: Trello MCP Server
インストール
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
発達
前提条件
設定
リポジトリをクローンする
git clone https://github.com/modelcontextprotocol/server-trello.git
cd server-trello
依存関係をインストールする
プロジェクトを構築する
テストの実行
貢献
貢献を歓迎します!行動規範とプルリクエストの送信手順の詳細については、貢献ガイドをお読みください。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
謝辞