Rename docs/backend/*.md to Django-migration-style naming: trello-auth-spec.md → 001_trello_auth_spec.md (Issue #1) manage-boards-spec.md → 002_manage_boards_spec.md (Issue #2) manage-lists-spec.md → 003_manage_lists_spec.md (Issue #3) manage-cards-spec.md → 004_manage_cards_spec.md (Issue #4) Each doc now includes a **Doc:** field with its sequence number.
3.0 KiB
3.0 KiB
Trello Plugin — Manage Trello Boards
Feature: US: Manage Trello Boards
Issue: #2
Branch: feature/manage-boards
Doc: 002
Overview
Extends the Trello plugin with board management capabilities: create, rename, close/archive, open, and view details of Trello boards.
Design Decisions
- Extends existing TrelloClient — All board operations go through the same
TrelloClientclass from the auth feature. - Board selection by ID — The Trello API identifies boards by ID. The tool accepts both ID and name (client resolves name to ID).
- Resolves board name to ID — When a user provides a board name instead of ID, the client fetches all boards and matches by name.
Tools
trello_create_board
Create a new Trello board.
Parameters:
| Param | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Board name |
default_lists |
bool | No | Whether to create the default lists (default: true) |
Returns:
{
"success": true,
"board": {"id": "abc123", "name": "My Board", "url": "https://trello.com/b/abc123"}
}
trello_rename_board
Rename an existing board.
Parameters:
| Param | Type | Required | Description |
|---|---|---|---|
board_id |
string | Yes | Board ID or name |
name |
string | Yes | New board name |
Returns:
{"success": true, "board": {"id": "abc123", "name": "New Name"}}
trello_archive_board
Close/archive a board.
Parameters:
| Param | Type | Required | Description |
|---|---|---|---|
board_id |
string | Yes | Board ID or name |
Returns:
{"success": true, "message": "Board 'My Board' archived."}
trello_open_board
Re-open a closed/archived board.
Parameters:
| Param | Type | Required | Description |
|---|---|---|---|
board_id |
string | Yes | Board ID or name |
Returns:
{"success": true, "message": "Board 'My Board' opened."}
trello_board_details
View details of a specific board, including its lists and members.
Parameters:
| Param | Type | Required | Description |
|---|---|---|---|
board_id |
string | Yes | Board ID or name |
Returns:
{
"success": true,
"board": {
"id": "abc123",
"name": "My Board",
"url": "https://trello.com/b/abc123",
"desc": "",
"closed": false,
"starred": false,
"lists": [{"id": "l1", "name": "To Do"}, {"id": "l2", "name": "In Progress"}],
"members": [{"id": "m1", "username": "user1", "full_name": "User One"}]
}
}
Trello API Endpoints
| Purpose | Method | Endpoint |
|---|---|---|
| Create board | POST | /1/boards/ |
| Update board | PUT | /1/boards/{id} |
| Get board details | GET | /1/boards/{id} (with lists and members fields) |
Error Handling
- Board not found → clear message suggesting
trello_list_boardsto find the ID - Validation errors → surfaced directly from Trello API