Skip to main content
Glama

MCP-сервер Trello

значок кузнеца

Сервер Model Context Protocol (MCP), предоставляющий инструменты для взаимодействия с досками Trello. Этот сервер обеспечивает бесшовную интеграцию с API Trello, одновременно автоматически обрабатывая ограничение скорости, безопасность типов и обработку ошибок.

Журнал изменений

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

  • Добавлен инструмент attach_image_to_card для прикрепления изображений к карточкам с URL-адресов.

  • Добавлена поддержка Docker с многоэтапной сборкой

  • Улучшена безопасность за счет перемещения переменных среды в .env

  • Добавлена конфигурация Docker Compose

  • Добавлен .env.template для более простой настройки

0.1.1

  • Добавлен инструмент move_card для перемещения карточек между списками.

  • Улучшенная документация

0.1.0

  • Первоначальный выпуск с базовыми функциями управления досками Trello

Related MCP server: Claude MCP Trello

Функции

  • Полная интеграция с доской Trello : взаимодействие с карточками, списками и действиями на доске

  • Встроенное ограничение скорости : соблюдает ограничения API Trello (300 запросов/10 с на ключ API, 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

Чтобы автоматически установить Trello Server для Claude Desktop через Smithery :

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

Эти значения можно получить из:

  • API-ключ: https://trello.com/app-key

  • Токен: сгенерируйте, используя свой ключ API

  • ID доски: указан в URL-адресе доски (например, https://trello.com/b/BOARD\_ID/имя-доски )

  • Идентификатор рабочего пространства: находится в настройках рабочего пространства или с помощью инструмента list_workspaces

Управление советом директоров и рабочим пространством

Начиная с версии 0.3.0 сервер MCP поддерживает динамический выбор доски и рабочего пространства:

  • TRELLO_BOARD_ID в вашем файле .env используется как начальный идентификатор доски при запуске сервера.

  • Вы можете изменить активную доску в любое время с помощью инструмента 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: {} }

Доступные инструменты

получить_карты_по_идентификатору_списка

Извлечь все карты из определенного списка.

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

получить_списки

Получить все списки с активной в данный момент доски.

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

Ограничение скорости

Сервер реализует алгоритм токен-корзины для ограничения скорости в соответствии с ограничениями API Trello:

  • 300 запросов за 10 секунд на один ключ API

  • 100 запросов за 10 секунд на токен

Ограничение скорости обрабатывается автоматически, и запросы будут поставлены в очередь при достижении лимитов.

Обработка ошибок

Сервер предоставляет подробные сообщения об ошибках для различных сценариев:

  • Неверные входные параметры

  • Превышен лимит скорости

  • Ошибки аутентификации API

  • Проблемы с сетью

  • Недействительные идентификаторы доски/списка/карты

Разработка

Предпосылки

  • Node.js 16 или выше

  • npm или пряжа

Настраивать

  1. Клонировать репозиторий

git clone https://github.com/delorenj/mcp-server-trello cd mcp-server-trello
  1. Установить зависимости

npm install
  1. Построить проект

npm run build

Внося вклад

Ваши вклады приветствуются!

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .

Благодарности

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

Latest Blog Posts

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