trellio-mcp — MCP-сервер для Trello
👁 License: GPL v3
👁 Python 3.10+
👁 MCP
MCP-сервер, который предоставляет Claude Desktop, Claude Code и Gemini CLI полный доступ к API Trello. Построен на базе асинхронной клиентской библиотеки trellio и официального Python MCP SDK. Разработан в соответствии с рекомендациями BDD v1.8.0.
Функции
48 инструментов MCP — прямое соответствие методам trellio, плюс один составной инструмент
get_board_overview2 шаблона ресурсов —
trello://board/{id}иtrello://card/{id}для загрузки расширенного контекста3 промпта —
summarize_board,create_sprint,daily_standupв качестве ярлыков рабочих процессовВстроенный процесс аутентификации —
python -m trello_mcp authоткрывает браузер, пользователь нажимает «Разрешить», токен сохраняется безопасноСтруктурированная обработка ошибок — ошибки API Trello преобразуются в понятные и полезные сообщения об ошибках MCP
Транспорт stdio — работает как локальный подпроцесс, без сетевой поверхности атаки
Related MCP server: Trello MCP Server
Инструменты
Категория | Инструменты | Кол-во |
Обнаружение |
| 2 |
Доски |
| 5 |
Списки |
| 4 |
Карточки |
| 9 |
Метки |
| 4 |
Чек-листы |
| 6 |
Комментарии |
| 4 |
Участники |
| 3 |
Вложения |
| 6 |
Вебхуки |
| 5 |
Инструменты для карточек поддерживают pos (top/bottom),
idLabels (через запятую), due (ISO 8601) и dueComplete
(true/false) при создании и обновлении.
Предварительные требования
Python 3.10+
Ключ API Trello (добавьте
http://localhost:8095в Allowed Origins)
Установка
Smithery
npx @smithery/cli install gupta/trellio-mcp --client claudeИспользование pipx (рекомендуется)
Для глобальной установки, чтобы команда trellio-mcp была доступна в вашем PATH:
pipx install trellio-mcpАльтернативно, вы можете запустить его «на лету» без установки:
pipx run trellio-mcp(Примечание: Если вы используете pipx run, конфигурация вашего MCP-клиента также должна использовать pipx в качестве команды и run trellio-mcp в качестве аргументов.)
Использование pip
pip install trellio-mcpИз исходного кода
git clone https://github.com/scaratec/trellio-mcp.git
cd trellio-mcp
python3 -m venv .venv
.venv/bin/pip install -e ".[dev]"Аутентификация
Интерактивная (рекомендуется)
Запустите команду аутентификации на каждой машине, чтобы подключить свою учетную запись Trello:
Если вы установили глобально (pipx install или pip install):
TRELLO_API_KEY=your_api_key trellio-mcp authЕсли используете выполнение «на лету» (pipx run):
TRELLO_API_KEY=your_api_key pipx run trellio-mcp authЭто откроет браузер, где вы авторизуете приложение. Токен
захватывается автоматически и сохраняется в
~/.config/trellio-mcp/credentials.json (права доступа 0600).
После аутентификации переменные окружения не требуются — сервер считывает сохраненные учетные данные при запуске.
Переменные окружения (резервный вариант)
Если сохраненные учетные данные не найдены, сервер переключается на переменные окружения:
export TRELLO_API_KEY=your_api_key
export TRELLO_TOKEN=your_tokenКонфигурация MCP-клиента
Claude Desktop
Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) или %APPDATA%\Claude\claude_desktop_config.json
(Windows):
{
"mcpServers": {
"trello": {
"command": "pipx",
"args": ["run", "trellio-mcp"]
}
}
}Если используете аутентификацию через переменные окружения вместо сохраненных учетных данных, добавьте:
"env": {
"TRELLO_API_KEY": "your_api_key",
"TRELLO_TOKEN": "your_token"
}Claude Code
Добавьте в ~/.claude/settings.json или в проект
.claude/settings.json:
{
"mcpServers": {
"trello": {
"command": "pipx",
"args": ["run", "trellio-mcp"]
}
}
}Gemini CLI
Добавьте в ~/.gemini/settings.json:
{
"mcpServers": {
"trello": {
"command": "pipx",
"args": ["run", "trellio-mcp"]
}
}
}Архитектура
MCP Client (Claude / Gemini)
│ stdio (JSON-RPC)
▼
trellio-mcp (FastMCP)
│ async/await
▼
trellio (httpx)
│ HTTPS
▼
Trello APIКлючевые решения (задокументированы в docs/adr/):
ADR | Решение |
001 | Python MCP SDK для согласования языка с trellio |
002 | Транспорт stdio — отсутствие сетевой поверхности атаки |
003 | Сохраненные учетные данные с резервным вариантом через переменные окружения |
004 | Сопоставление инструментов 1:1 — один инструмент на метод trellio |
005 | trellio как зависимость PyPI (>=1.4.0) |
006 | Инструменты + Ресурсы + Промпты как возможности MCP |
007 |
|
Тестирование
Проект использует BDD с behave, в соответствии с рекомендациями BDD v1.8.0.
PYTHONPATH=src .venv/bin/python -m behave17 features passed, 0 failed, 0 skipped
163 scenarios passed, 0 failed, 0 skipped
970 steps passed, 0 failed, 0 skippedАрхитектура тестирования:
AsyncMock(spec=TrellioClient)— мок на границе клиента, а не HTTPПроверка персистентности через записи вызовов моков (§4.3)
Защита от хардкода через Scenario Outlines с >= 2 вариантами (§2.3)
Послойное перечисление путей сбоев (§4.5)
Независимый аудит спецификаций согласно §13
См. Тематическое исследование для подробного описания процесса разработки на основе BDD.
Структура проекта
trellio-mcp/
├── src/trello_mcp/
│ ├── __init__.py # Tool registration
│ ├── __main__.py # Entry point (server + auth)
│ ├── server.py # FastMCP instance + client mgmt
│ ├── auth.py # OAuth flow + credential storage
│ ├── errors.py # Error translation (ADR 007)
│ ├── tools/ # 10 modules, 48 tools
│ ├── resources.py # 2 resource templates
│ └── prompts.py # 3 prompts
├── features/ # 17 BDD feature files
│ └── steps/ # Step definitions
├── docs/
│ ├── adr/ # 7 Architecture Decision Records
│ ├── tool-design.md # Scenario-driven tool analysis
│ └── case-study-bdd-mcp-server.md
└── pyproject.tomlПубликация
PyPI
uv build
twine upload dist/trellio_mcp-<version>*Smithery
Пространство имен — gupta. Обновите релиз после новой версии PyPI:
npx @smithery/cli mcp publish "https://github.com/scaratec/trellio-mcp" -n gupta/trellio-mcpТакже обновите закрепленную версию в smithery.yaml commandFunction.
Лицензия
Этот проект лицензирован по лицензии GNU General Public License v3.0 — подробности см. в файле LICENSE.
Maintenance
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/scaratec/trellio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
