Cover image
Try Now
2025-01-04

镜像://github.com/delorenj/mcp-server-trello

3 years

Works with Finder

0

Github Watches

1

Github Forks

0

Github Stars

MCP Server Trello

A Model Context Protocol (MCP) server that provides tools for interacting with Trello boards. This server enables seamless integration with Trello's API while handling rate limiting, type safety, and error handling automatically.

Features

  • Full Trello Board Integration: Interact with cards, lists, and board activities
  • Built-in Rate Limiting: Respects Trello's API limits (300 requests/10s per API key, 100 requests/10s per token)
  • Type-Safe Implementation: Written in TypeScript with comprehensive type definitions
  • Input Validation: Robust validation for all API inputs
  • Error Handling: Graceful error handling with informative messages

Installation

npm install @modelcontextprotocol/mcp-server-trello

Configuration

Add the server to your MCP settings file with the following configuration:

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

Required Environment Variables

  • TRELLO_API_KEY: Your Trello API key (get from https://trello.com/app-key)
  • TRELLO_TOKEN: Your Trello token (generate using your API key)
  • TRELLO_BOARD_ID: ID of the Trello board to interact with (found in board URL)

Available Tools

get_cards_by_list_id

Fetch all cards from a specific list.

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

get_lists

Retrieve all lists from the configured board.

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

get_recent_activity

Fetch recent activity on the board.

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

add_card_to_list

Add a new card to a specified list.

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

update_card_details

Update an existing card's details.

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

archive_card

Send a card to the archive.

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

add_list_to_board

Add a new list to the board.

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

archive_list

Send a list to the archive.

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

get_my_cards

Fetch all cards assigned to the current user.

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

Rate Limiting

The server implements a token bucket algorithm for rate limiting to comply with Trello's API limits:

  • 300 requests per 10 seconds per API key
  • 100 requests per 10 seconds per token

Rate limiting is handled automatically, and requests will be queued if limits are reached.

Error Handling

The server provides detailed error messages for various scenarios:

  • Invalid input parameters
  • Rate limit exceeded
  • API authentication errors
  • Network issues
  • Invalid board/list/card IDs

Development

Prerequisites

  • Node.js 16 or higher
  • npm or yarn

Setup

  1. Clone the repository
git clone https://github.com/modelcontextprotocol/server-trello.git
cd server-trello
  1. Install dependencies
npm install
  1. Build the project
npm run build

Running Tests

npm test

Contributing

Contributions are welcome! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Alexandru Strujac
  • Efficient thumbnail creator for YouTube videos

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Khalid kalib
  • Write professional emails

  • XLwebDev.com
  • PR Professional: Guiding You to Get Media Placements and Publicity Quickly and Effectively

  • Jan Meindl
  • Builds new GPTs

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • OffchainLabs
  • 进行以太坊的实施

  • huahuayu
  • 统一的API网关,用于将多个Etherscan样区块链Explorer API与对AI助手的模型上下文协议(MCP)支持。

  • deemkeen
  • 用电源组合控制您的MBOT2:MQTT+MCP+LLM

    Reviews

    5 (1)
    Avatar
    user_auaK2C0A
    2025-04-15

    I've been using Remote MCP Server on Cloudflare by danXyu and it's fantastic! The server's performance is excellent, providing seamless connectivity and reliable uptime. It’s easy to set up and manage, and the Cloudflare integration adds an extra layer of security. Highly recommend for anyone needing a robust remote server solution!