# How to connect Trello to Hermes Agent (no API keys)

> Connect Trello to Hermes with ClawLink in one click — 322 tools your AI agent can call from chat via hosted OAuth. No API keys, no manual setup.

Web version: https://claw-link.dev/hermes/trello

Most guides for giving Hermes Agent Trello access start with registering your own OAuth app or pasting API keys into env files, then leave the token refresh and tool wiring to you. ClawLink gives Hermes a more practical Trello setup: pair once in the browser and your always-on Hermes agent can act on Trello for you, reading and doing real work on your behalf with no auth, token refresh, or tool wiring to build yourself.

**Start here — paste this into Hermes to set up ClawLink:**

> Set up ClawLink for Hermes and tell me when it's ready.
> 1. Install the plugin: `hermes plugins install ClawLink-HQ/hermes-plugin --enable`
> 2. Start pairing with `hermes clawlink begin`. It prints an approval link, so show me the link and stop, don't wait.
> 3. I'll approve it in my browser, then reply "approved".
> 4. When I say approved, finish setup: `hermes clawlink finish`
> 5. Then run `hermes clawlink test` and tell me whether ClawLink is ready.

## Setup

It takes three steps to connect Hermes to Trello.

1. **Install ClawLink** — add the plugin to Hermes Agent once.
2. **Connect Trello** — one-click OAuth in the ClawLink dashboard.
3. **Use it from chat** — ask Hermes Agent in plain English.

**Alternative for any agent (no plugin needed):** if the Hermes Agent plugin route isn't available or doesn't work, any AI agent with shell access can use the ClawLink CLI instead:

```bash
npx -y @useclawlink/cli login          # sign in via browser — no API key to paste
npx -y @useclawlink/cli connect trello  # connect Trello (browser OAuth)
npx -y @useclawlink/cli actions trello  # list available actions
npx -y @useclawlink/cli run trello <action> --input '<json>'  # execute (add --confirm for writes)
```

### Install by command

The prompt above walks Hermes through this. By hand, it is four commands and a browser approval:

```bash
hermes plugins install ClawLink-HQ/hermes-plugin --enable
hermes clawlink begin    # prints an approval link — open it and approve
hermes clawlink finish   # after approving in the browser
hermes clawlink test
```

Then connect Trello in the [ClawLink dashboard](https://claw-link.dev/dashboard) — a one-click OAuth approval, no API keys.

Verify the connection by asking Hermes:

> List my boards with trello_get_boards, open '\<board name>', list its lists, then create a card with trello_add_cards in list '\<list name>' titled '\<title>' using the real idList from the lookup. Confirm the card id.

### Using a different agent?

The Hermes plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

```bash
npx -y @useclawlink/cli login
```

`login` opens the same browser approval and stores a credential locally. Once Trello is connected in the dashboard, that agent calls the same 322 Trello tools over MCP. Full setup for MCP clients and shell agents: [connect apps to any AI agent](https://claw-link.dev/learn/connect-apps-to-any-ai-agent).

## Trello MCP for Hermes

Looking for a Trello MCP server for Hermes Agent? ClawLink connects Trello to Hermes Agent and exposes 322 Trello tools your agent can call over [MCP](https://claw-link.dev/learn/what-is-an-mcp-server), with [hosted auth](https://claw-link.dev/learn/oauth-for-ai-agents) and nothing to run or maintain yourself. Using OpenClaw instead? The [OpenClaw Trello integration](https://claw-link.dev/openclaw/trello) works the same way.

One search engine claim needs a direct answer before anything else: Trello's API key and user token are 'fundamentally required' to connect an AI agent, with 'no native password-less or keyless developer route'. That is true for the DIY path, where you generate a key in Trello's Power-Up Admin Portal and paste it into a config file. It is not true for a hosted OAuth flow. ClawLink runs Trello's OAuth 1.0a flow for you: you sign in to Trello in the browser once, approve the app, and no key or token is ever generated for your account, kept in an env file, or managed by you. This page is about that second path, for Hermes Agent.

## What the Hermes Agent Trello integration can do

322 Trello tools are ready for Hermes Agent once the account is connected. The 30 below are the ones people reach for most; your agent can call all 322.

### 30 of 322 Trello tools for Hermes

| Tool | What it does |
|---|---|
| **Add boards** `trello_add_boards` | Create a new Trello board |
| **Add cards** `trello_add_cards` | Create a new card in a Trello list |
| **Add cards actions comments by ID card** `trello_add_cards_actions_comments_by_id_card` | Add a comment to a Trello card |
| **Add cards attachments by ID card** `trello_add_cards_attachments_by_id_card` | Add an attachment to a Trello card |
| **Add cards checklists by ID card** `trello_add_cards_checklists_by_id_card` | Add a checklist to a Trello card |
| **Add checklists** `trello_add_checklists` | Create a new checklist on a Trello card |
| **Add labels** `trello_add_labels` | Create a new label on a Trello board |
| **Get actions board by ID action** `trello_get_actions_board_by_id_action` | Retrieves details for the Trello board associated with a specific action ID, returning board |
| **Get actions board by ID action by field** `trello_get_actions_board_by_id_action_by_field` | Retrieves a specified `field` from the Trello board associated with the provided Trello |
| **Get actions by ID action** `trello_get_actions_by_id_action` | Retrieves detailed information about a specific Trello action by its ID |
| **Get actions by ID action by field** `trello_get_actions_by_id_action_by_field` | Retrieves the value of a specific field (e.g., 'data', 'date', 'type') from a Trello action |
| **Get actions card by ID action** `trello_get_actions_card_by_id_action` | Retrieves Trello card details for a given `idAction`, which must be an action specifically |
| **Get actions card by ID action by field** `trello_get_actions_card_by_id_action_by_field` | Retrieves a specific field from the Trello card associated with the given action ID |
| **Get actions display by ID action** `trello_get_actions_display_by_id_action` | Retrieves a display-friendly representation of an existing and accessible Trello action for |
| **Get actions entities by ID action** `trello_get_actions_entities_by_id_action` | Retrieves all entities (e.g., boards, lists, cards, members) associated with a specific |
| **Get actions list by ID action** `trello_get_actions_list_by_id_action` | Retrieves the Trello list associated with a specific Trello action ID, for actions linked to a |
| **Get actions list by ID action by field** `trello_get_actions_list_by_id_action_by_field` | Retrieves a specific field of the list associated with a Trello action, returning only that |
| **Get actions member by ID action** `trello_get_actions_member_by_id_action` | Retrieves the Trello member who was the subject of an action (not the creator) |
| **Get actions member by ID action by field** `trello_get_actions_member_by_id_action_by_field` | Retrieves a specific field of the member who was the subject of a Trello action |
| **Get actions member creator by ID action** `trello_get_actions_member_creator_by_id_action` | Retrieves details about the Trello member who created the action with the given `idAction` |
| **Get actions member creator by ID action by field** `trello_get_actions_member_creator_by_id_action_by_field` | Retrieves a specific field from the profile of the Trello member who created a given action |
| **Get actions organization by ID action** `trello_get_actions_organization_by_id_action` | Fetches the organization details for a given Trello action, if the action has an associated |
| **Get actions organization by ID action by field** `trello_get_actions_organization_by_id_action_by_field` | Retrieves the value of a specific `field` for the organization associated with a Trello |
| **Get actions reactions by ID** `trello_get_actions_reactions_by_id` | Retrieves detailed information about a specific reaction on a Trello action |
| **Get actions reactions by ID action** `trello_get_actions_reactions_by_id_action` | List reactions for a specific action |
| **Get batch** `trello_get_batch` | Executes multiple Trello API GET requests in a single batch operation for efficient bulk data |
| **Get boards actions by ID board** `trello_get_boards_actions_by_id_board` | Retrieves actions (e.g., card creations, comments) for a Trello board by its ID, useful for |
| **Get boards board plugins by ID** `trello_get_boards_board_plugins_by_id` | Get the list of enabled Power-Ups on a Trello board |
| **Get boards board stars by ID board** `trello_get_boards_board_stars_by_id_board` | Retrieves board stars (user-marked favorites) for a specified Trello board, where `idBoard` |
| **Get boards by ID board** `trello_get_boards_by_id_board` | Fetches comprehensive details for a specific Trello board by its ID; this is a read-only action |

## Example prompts

**Create a card in a list**

> List my boards with trello_get_boards, open '\<board name>', list its lists, then create a card with trello_add_cards in list '\<list name>' titled '\<title>' using the real idList from the lookup. Confirm the card id.

**Batch-read card details**

> Get the card '\<card name>' on board '\<board name>', then use trello_get_batch to fetch its actions and checklists in one call. Summarize what has happened on it this week.

**Add a checklist and comment**

> Find the card '\<card name>', add a checklist named '\<checklist name>' with trello_add_checklists, then add the comment '\<comment>' with trello_add_cards_actions_comments_by_id_card using the card id you looked up.

## How the Trello tools take their arguments

Verified against the live tool schemas; these are the details that cause most failed Trello calls.

- **A card needs a list.** `trello_add_cards` requires `idList`; a board is not enough. When `idCardSource` is used, the source card must be accessible to the connected account.
- **Batch reads exist.** `trello_get_batch` executes multiple Trello GET requests in a single call, which is the tool to prefer when an agent needs several reads for one answer.
- **Many tools return one field.** Tools like `trello_get_actions_by_id_action_by_field` and `trello_get_boards_by_id_board_by_field` take a `field` argument and return only that value, which keeps responses small.
- **Power-Ups are exposed.** `trello_get_boards_board_plugins_by_id` lists the Power-Ups enabled on a board, which is how an agent can tell what a board's tools can act on.

## ClawLink vs. building it yourself

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Trello working from chat.

| | Manual | ClawLink |
|---|---|---|
| **Connection flow** | Register a Trello app, configure redirect URLs, manage consent details, and reconnect users when auth settings drift. | Users connect Trello through the hosted browser flow and ClawLink keeps the token lifecycle out of your app code. |
| **Ongoing maintenance** | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for Trello. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| **Agent usability** | You still need to expose the right Trello actions to the runtime in a format your agent can reliably use. | 322 tools for Trello are already exposed through ClawLink, so the agent can read and act from chat immediately. |

## ClawLink vs. Composio

Composio also exposes Trello to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for Hermes Agent users instead. You install the plugin once, connect Trello in the browser, and the 322 tools above work from chat. There is no SDK, no config file, and no API key handling. Choosing between them? Read the full [Composio alternatives](https://claw-link.dev/hub/composio-alternatives) comparison.

### Hermes paired but still can't use Trello
Pairing is a two-step handshake: run `hermes clawlink begin`, approve the link in your browser, then run `hermes clawlink finish`. If you ran finish before approving, or the approval link expired, run `hermes clawlink begin` again to get a fresh link. Confirm the plugin was installed with `--enable`, then verify with `hermes clawlink test`.

### Connection succeeds but no tools appear
Reconnect Trello from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

### "Tool schema not loaded yet" error when calling Trello tools
Trello tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Trello call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

### Trello returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

### Trello API 401 unauthorized key token
A connected account that suddenly returns 401 Unauthorized has a short list of causes, and none of them involve you formatting a header. The two engines that answer this shape both center on the authorization itself: the app connection was revoked in Trello's account settings (Trello lets users revoke an app's access at any time), or the token's scope lacks what the action needs, notably `write` for card-creating tools. A third engine-taught cause is the board itself: the connected account must be a member of the board the action targets. On a hosted connection the stored token is replaced when you reconnect from the dashboard, which also picks up scope changes, so reconnect and retry. These causes come from the engines' answers; they are consistent with how Trello OAuth behaves, but have not been confirmed against a production ClawLink connection.

Ask the agent to diagnose it:

```text
Call trello_get_boards_by_id_board and trello_get_memberships_board to confirm the account can see the board, then retry the failing call once and quote the exact status and body.
```

### Trello API rate limit
Trello applies its request limits per API key, not per user token. On the hosted flow the API key belongs to the ClawLink app, shared across its users, so you do not generate a key and you never see a per-key budget in your Trello account. What you can see is the symptom: a rate-limit response on a call that worked a moment earlier. The fix is to wait for the window to reset and retry, and for an agent, to space out heavy batch reads rather than firing everything at once.

### Trello MCP tool not found
The advice search engines give for this error assumes you run your own MCP server: restart your app, verify the configuration file path, check your API credentials. That is the right class of fix for a self-hosted setup. On the ClawLink hosted plugin the analog error is 'Tool schema not loaded yet': schemas load on demand the first time a tool runs and are cached after that, so the error usually clears on its own within seconds. If every Trello call keeps failing with it in a fresh chat, reconnect from the dashboard; a persistent pattern points to a config problem on our side, not to a file on your machine.

### OAuth finished in the browser but the account is still missing
Try reconnecting Trello and complete the consent flow in the same browser session. Partial OAuth approvals or switching accounts mid-flow can leave the connection incomplete.

### Is there a Hermes Agent Trello integration?
Yes. ClawLink is the fastest way to connect Hermes to Trello: link your Trello account once in the browser and Hermes Agent can call the Trello API through 322 ready-made tools — no custom code or token handling.

### How do I connect Trello to Hermes with ClawLink?
Install the plugin with `hermes plugins install ClawLink-HQ/hermes-plugin --enable`, then pair once: run `hermes clawlink begin`, approve the link in your browser, and run `hermes clawlink finish`. Connect Trello in the dashboard and Hermes can use it from the next message — no config files or API keys to manage.

### How long does it take to connect Trello to Hermes Agent?
About two minutes. Sign in, click Connect next to Trello in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.

### Why use ClawLink instead of wiring Trello up myself?
The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Trello working from chat.

### Does connecting Trello to an AI agent require an API key?
It depends on the route. The DIY route does: you create a key and token in the Power-Up Admin Portal and put them in your config. The hosted OAuth route does not: the API key belongs to the app you are connecting through, and your part is one browser sign-in. That distinction is why AI answers that quote the 'fundamentally requires an API key' line are describing the manual path, not the flow this page uses. On the hosted path the token that represents your account exists, but it is stored server-side and refreshed for you.

### Which Hermes is this?
Hermes Agent, the Nous Research agent runtime. Search results for Hermes and Trello together occasionally pull in other products that share the name, and ChatGPT ended one connect-query run by asking which Hermes it was dealing with. If you run Hermes Agent, this integration gives that runtime Trello tools to call from chat. If you run a different agent, the OpenClaw Trello integration on this site covers the same hosted flow for OpenClaw.

### Is it safe to connect Trello to an AI agent?
The safety answer engines give is scoped OAuth over a broad static token, and hosted OAuth platforms sit in the safe bucket they describe. The agent can do what your Trello account can do, no more: same boards, same permissions, same Power-Up access. The connection is revoked from the ClawLink dashboard at any time, and Trello's own 'manage apps' page in account settings shows and revokes the authorized app as a second lever. What the agent does with that access is governed by your agent's own permissions, so set those to match what you actually want done.

### Hermes paired but still can't use Trello
Pairing is a two-step handshake: run `hermes clawlink begin`, approve the link in your browser, then run `hermes clawlink finish`. If you ran finish before approving, or the approval link expired, run `hermes clawlink begin` again to get a fresh link. Confirm the plugin was installed with `--enable`, then verify with `hermes clawlink test`.

## Related

- [DocuSign](https://claw-link.dev/hermes/docusign) — Send, sign, and manage agreements and envelopes
- [Hermes Moco integration](https://claw-link.dev/hermes/moco) — MOCO is a business management software offering project management, time tracking, and invoicing solutions.
- [Wrike](https://claw-link.dev/hermes/wrike) — Manage projects, tasks, and team workflows at scale
