> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Trello

> Enable an Agent to create and manage Trello boards, lists, and cards.

## Prerequisites

The following examples require the `py-trello` library and Trello API credentials which can be obtained by following Trello's developer documentation.

```shell theme={null}
uv pip install -U py-trello openai
```

Set the following environment variables:

```shell theme={null}
export TRELLO_API_KEY="YOUR_API_KEY"
export TRELLO_API_SECRET="YOUR_API_SECRET"
export TRELLO_TOKEN="YOUR_TOKEN"
```

## Example

The following agent will create a board called `ai-agent`, add lists called `todo` and `doing`, and create a card called `create agent` in each list.

```python cookbook/91_tools/trello_tools.py theme={null}
from agno.agent import Agent
from agno.tools.trello import TrelloTools

agent = Agent(
    instructions=[
        "You are a Trello management assistant that helps organize and manage Trello boards, lists, and cards",
        "Help users with tasks like:",
        "- Creating and organizing boards, lists, and cards",
        "- Moving cards between lists",
        "- Retrieving board and list information",
        "- Managing card details and descriptions",
        "Always confirm successful operations and provide relevant board/list/card IDs and URLs",
        "When errors occur, provide clear explanations and suggest solutions",
    ],
    tools=[TrelloTools()],
)

agent.print_response(
    "Create a board called ai-agent and inside it create list called 'todo' and 'doing' and inside each of them create card called 'create agent'",
    stream=True,
)

```

## Toolkit Functions

| Function | Description |
| - | - |
| `create_card` | Creates a new card in a specified board and list. |
| `get_board_lists` | Retrieves all lists on a specified Trello board. |
| `move_card` | Moves a card to a different list. |
| `get_cards` | Retrieves all cards from a specified list. |
| `create_board` | Creates a new Trello board. |
| `create_list` | Creates a new list on a specified board. |
| `list_boards` | Lists all Trello boards accessible by the authenticated user. |

## Toolkit Params

| Parameter | Type | Default | Description |
| - | - | - | - |
| `api_key` | `Optional[str]` | `None` | Trello API key. If not provided, uses TRELLO\_API\_KEY environment variable. |
| `api_secret` | `Optional[str]` | `None` | Trello API secret. If not provided, uses TRELLO\_API\_SECRET environment variable. |
| `token` | `Optional[str]` | `None` | Trello token. If not provided, uses TRELLO\_TOKEN environment variable. |

### Board Filter Options for `list_boards`

The `list_boards` function accepts a `board_filter` argument with the following options:

* `all` (default)
* `open`
* `closed`
* `organization`
* `public`
* `starred`

You can use `include_tools` or `exclude_tools` to modify the list of tools the agent has access to. Learn more about [selecting tools](https://agno-v2.mintlify.site/tools/selecting-tools.md).

## Developer Resources

* [Tools Source](https://github.com/agno-agi/agno/blob/main/libs/agno/agno/tools/trello.py)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.