trello-mcp
Provides tools for interacting with Trello boards, lists, cards, checklists, and comments via the Trello REST API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@trello-mcplist all cards on my board"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
trello-mcp
A Codex-first Trello MCP server for AI agents
trello-mcp gives Codex and other MCP-compatible AI agents a clean, practical way to inspect and update Trello boards through Trello's official REST API.
Why This Exists
AI agents are useful when they can see the real workflow, not just the codebase. This server lets Codex connect to Trello so it can understand tasks, keep cards updated, add evidence comments, and help maintain project boards without scraping or browser automation.
It is designed for Codex first, but it works as a normal stdio MCP server in any client that supports the Model Context Protocol.
Related MCP server: Trello MCP Server
Features
Area | Supported actions |
Account | Identify the authenticated Trello member |
Workspaces | List visible Trello workspaces |
Boards | List open boards and inspect board metadata |
Lists | List board columns/lists |
Cards | List, read, search, create, update, move, comment on, and archive cards |
Checklists | Create checklists and checklist items |
Agent safety | Redacted errors, no committed credentials, archive-first workflow guidance |
Tool List
Tool | Purpose |
| Show the authenticated Trello member |
| List visible Trello workspaces |
| List open Trello boards |
| Read board metadata |
| List board lists |
| List cards, optionally by list |
| Read a card |
| Search cards by text |
| Create a card |
| Update card title, description, due date, or archive state |
| Move a card to another list |
| Add a card comment |
| Archive a card |
| Add a checklist to a card |
| Add an item to a checklist |
Quick Start
git clone https://github.com/KharalDipendra/trello-mcp.git
cd trello-mcp
npm install
npm run buildRun the local verification suite:
npm run checkTrello Credentials
You need a Trello API key and token.
Open Trello's API key page: trello.com/app-key
Copy your API key.
Generate a token using this URL after replacing
YOUR_API_KEY:
https://trello.com/1/authorize?expiration=never&name=trello-mcp&scope=read,write&response_type=token&key=YOUR_API_KEYRequired environment variables:
TRELLO_API_KEY=your_trello_api_key
TRELLO_TOKEN=your_trello_tokenOptional environment variables:
TRELLO_BOARD_ID=default_board_id
TRELLO_IDENTITY=default
TRELLO_BASE_URL=https://api.trello.com/1Never commit a real .env file. Keep Trello credentials in your MCP client config, shell environment, or secret manager.
Codex Setup
Build the project first:
npm install
npm run buildThen add an MCP server entry to your Codex config:
{
"mcpServers": {
"trello": {
"command": "node",
"args": ["/absolute/path/to/trello-mcp/dist/index.js"],
"env": {
"TRELLO_API_KEY": "your_trello_api_key",
"TRELLO_TOKEN": "your_trello_token",
"TRELLO_BOARD_ID": "optional_default_board_id",
"TRELLO_IDENTITY": "default"
}
}
}
}For Windows paths, use escaped backslashes or forward slashes:
"args": ["C:/Users/you/Desktop/trello-mcp/dist/index.js"]Multiple Trello Accounts
Run one MCP entry per Trello identity:
{
"mcpServers": {
"trello-personal": {
"command": "node",
"args": ["/absolute/path/to/trello-mcp/dist/index.js"],
"env": {
"TRELLO_API_KEY": "key_for_account_one",
"TRELLO_TOKEN": "token_for_account_one",
"TRELLO_IDENTITY": "account-one"
}
},
"trello-work": {
"command": "node",
"args": ["/absolute/path/to/trello-mcp/dist/index.js"],
"env": {
"TRELLO_API_KEY": "key_for_account_two",
"TRELLO_TOKEN": "token_for_account_two",
"TRELLO_IDENTITY": "account-two"
}
}
}
}Standalone MCP Usage
The server communicates over stdio, so it is normally launched by an MCP client.
TRELLO_API_KEY=... TRELLO_TOKEN=... node dist/index.jsYou can also run the TypeScript source during development:
TRELLO_API_KEY=... TRELLO_TOKEN=... npm run devAgent Safety Model
trello-mcp is intentionally simple and explicit:
It uses Trello's REST API directly.
It does not scrape Trello pages.
It does not store credentials.
It redacts credentials from Trello API error messages.
It exposes archive tools, not permanent delete tools.
It encourages agents to inspect board state before changing cards.
Recommended agent behaviour:
Read the board, lists, and relevant cards first.
Explain planned changes before writing when the workflow is sensitive.
Add short evidence comments for meaningful card updates.
Move cards to done only when the underlying work is actually complete.
Prefer archiving stale cards over deleting them.
Development
npm install
npm run checkAvailable scripts:
Script | Description |
| Compile TypeScript into |
| Run mocked client tests |
| Build and test |
| Run the MCP server from TypeScript |
| Run the compiled MCP server |
The test suite uses mocked Trello responses and does not call the live Trello API.
Project Structure
trello-mcp/
examples/
codex-mcp.json
src/
index.ts
trelloClient.ts
test/
trelloClient.test.tsContributing
Issues and pull requests are welcome. Keep changes generic and avoid committing board data, workspace names, real card content, tokens, or account-specific config.
License
MIT. See LICENSE.
Available Tools
15 toolstrello_add_check_itemAdd Checklist ItemB
Add an item to an existing Trello checklist.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Checklist item text. | |
| checked | No | Mark the item complete. | |
| checklistId | Yes | Trello checklist id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose side effects, whether it can update existing items, permission requirements, or rate limiting. The short description adds no behavioral context beyond the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One efficient sentence, no redundant words. Front-loaded with action and resource. Could be slightly improved by adding context but not penalized for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple (3 params, no output schema). Description adequately covers the basic purpose but lacks behavioral details and usage guidance. Minimal but functional for this low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions. No additional constraints or examples are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb (Add) and resource (item to an existing Trello checklist). Distinguishes from siblings like trello_add_checklist (adds entire checklist) and trello_add_comment (adds comment).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use vs. alternatives, no prerequisites mentioned. Agent must infer that a checklist ID is required from the schema. No explicit 'when not to use' or context for choosing this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_add_checklistAdd Card ChecklistB
Add a checklist to a Trello card.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Checklist name. | |
| cardId | Yes | Trello card id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description does not disclose behavioral traits such as whether the action is idempotent, what happens if a checklist with the same name already exists, or any required permissions. The agent lacks key operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is appropriately sized for a tool with two simple parameters, though it could benefit from slightly more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (2 params, no output schema), the description covers the basic action but does not explain return values, side effects (e.g., card modification), or when to use this over siblings. It leaves gaps for the agent to infer critical details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with basic descriptions for both parameters. The tool description adds no additional meaning beyond the schema, so the baseline of 3 applies. No enrichment regarding parameter format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Add') and resource ('checklist') with a clear target ('to a Trello card'). It distinguishes from the sibling tool 'trello_add_check_item' which adds items to a checklist, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'trello_add_check_item' or 'trello_update_card'. There is no mention of prerequisites or context, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_add_commentAdd Card CommentB
Add a comment to a Trello card.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Comment text. | |
| cardId | Yes | Trello card id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose all behavioral traits. It only states the basic function without mentioning any side effects, permissions needed, or behavior characteristics (e.g., whether the comment is appended or replaces).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It effectively conveys the core purpose without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with only two required parameters and no output schema, the description is minimally adequate. However, it could be more complete by indicating that the comment is appended to the card's comment list.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add a comment') and the resource ('to a Trello card'). It is specific and distinguishes from sibling tools like trello_add_check_item.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. For example, it does not mention that this is for adding a text comment compared to adding a checklist item or archiving a card.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_archive_cardArchive Trello CardA
Archive a Trello card. Prefer this over permanent deletion.
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes | Trello card id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states 'Archive' without explaining what archiving entails (e.g., reversibility, state change, permissions), leaving behavioral traits largely undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two short, front-loaded sentences with no wasted words. Every sentence adds value: the first states the action, the second provides usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, no annotations), the description is minimal but lacks behavioral context such as whether archiving is reversible or the card's post-archive state. It is adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'cardId', which is already self-explanatory. The description adds no extra meaning beyond what the schema provides, so it meets but does not exceed the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Archive' and the resource 'Trello card', and it distinguishes the action from permanent deletion, which is a clear alternative even though not listed among siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises preference over permanent deletion, providing explicit when-to-use guidance. However, it does not elaborate on when not to use or list other alternatives beyond deletion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_create_cardCreate Trello CardB
Create a card by list id or by exact list name.
| Name | Required | Description | Default |
|---|---|---|---|
| due | No | Optional ISO due date. | |
| name | Yes | Card title. | |
| listId | No | Destination list id. | |
| boardId | No | Board id, required when using listName unless TRELLO_BOARD_ID is set. | |
| listName | No | Exact destination list name. | |
| description | No | Card description. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only states the creation action but omits important details like authentication requirements, side effects, or return values. Minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. It efficiently communicates the core functionality, though it could be slightly expanded to improve usefulness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 parameters, no output schema, and no annotations, the description is too short to be contextually complete. It fails to explain what the tool returns or any side effects, leaving the agent with insufficient information for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents parameters. The description adds no extra meaning beyond clarifying the two identification methods (listId vs. listName), which is already implied in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create a card' and specifies two methods (by list id or exact list name), distinguishing it from sibling tools like trello_move_card or trello_update_card.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the two methods but does not provide explicit guidance on when to use which, nor does it mention prerequisites like boardId needing to be set when using listName. It offers clear context but no exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_get_boardGet Trello BoardB
Return metadata for a Trello board.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | No | Board id. Defaults to TRELLO_BOARD_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description's minimal statement 'Return metadata' does not disclose behavioral traits such as whether it is read-only, what 'metadata' includes (e.g., lists, cards?), or any potential side effects. The agent must infer safety from the name alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. No extraneous information, but could benefit from slight elaboration (e.g., what metadata contains) without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description omits what 'metadata' includes (e.g., board name, description, lists?). Given the simplicity and sibling tools, this under-specifies the return value. Also lacks differentiation from similar tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter boardId described as 'Board id. Defaults to TRELLO_BOARD_ID.' The description adds no extra meaning beyond the schema, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Return metadata for a Trello board', specifying the verb 'return' and resource 'metadata for a Trello board'. This distinguishes it from siblings like trello_get_card (which returns card metadata) and trello_list_boards (which lists all board summaries).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., trello_list_boards for summaries, trello_get_card for cards). The description does not include any contextual hints about appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_get_cardGet Trello CardC
Return key details for a Trello card.
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes | Trello card id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits but only states 'Return key details'. It omits critical info like authentication requirements, error handling for invalid cardId, rate limits, or whether the operation is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no fluff. Appropriate length for a simple get tool, though could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read operation with no output schema, the description should clarify what 'key details' entails (e.g., card name, description, due date, labels). Without this, an agent cannot anticipate the return value, reducing completeness. No output schema increases the burden on description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema description for 'cardId' is minimal ('Trello card id.'). The description adds no further meaning beyond the schema. Baseline 3 is appropriate as schema already documents the parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Return' and resource 'key details for a Trello card', clearly distinguishing it as a read operation from siblings like 'update' or 'archive'. However, 'key details' is vague and could be more precise about which fields are returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'trello_search_cards' or 'trello_list_cards'. The agent receives no context about prerequisites or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_list_boardsList Trello BoardsA
List open Trello boards visible to the authenticated member.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description discloses that only open boards are listed and only those visible to the authenticated user, providing key behavioral context. It does not mention rate limits or pagination, but the tool is simple with no parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and resource, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description covers the essential behavior (listing open, visible boards). It is adequate for the low complexity, though it could mention output format or limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters; the baseline is 4. The description adds value by specifying the subset of boards ('open' and 'visible to authenticated member'), which is helpful context beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('open Trello boards') with scope ('visible to the authenticated member'), distinguishing it from sibling tools that focus on cards, lists, or modifications.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving available boards but does not explicitly state when to use it versus alternatives, such as when needing closed or archived boards. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_list_cardsList Board CardsB
List cards on a board, optionally filtered by exact list name.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | No | Board id. Defaults to TRELLO_BOARD_ID. | |
| listName | No | Optional exact list name filter. | |
| includeClosed | No | Include archived cards. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It states the tool lists cards and can filter by list name, but it does not disclose return format, pagination, sorting, or the behavior of includeClosed. It's adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 12 words, front-loaded. No unnecessary information, but it could be slightly expanded to include key details like includeClosed or return type without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should mention what is returned (e.g., list of card objects) and any important defaults or limitations. It lacks this and doesn't reference the includeClosed parameter. Incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents each parameter. The description adds no new semantic detail beyond restating the listName filter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'cards on a board' with an optional filter by exact list name. It distinguishes from siblings like trello_list_lists (lists lists) and trello_get_card (single card), but does not explicitly contrast with trello_search_cards, which is similar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings like trello_search_cards or trello_get_card. The description does not mention prerequisites, board selection, or fallback strategies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_list_listsList Board ListsC
List lists on a Trello board.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | No | Board id. Defaults to TRELLO_BOARD_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It only states 'List lists', omitting any mention of side effects (none expected), authentication requirements, rate limits, or that it is a read-only operation. The agent cannot infer safety or impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that clearly states the tool's core action. It is appropriately sized for a simple list operation, though it could be slightly expanded to include a hint about output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and absence of output schema, the description is minimally complete for listing lists. However, it would benefit from stating that the return value is an array of list objects, as the agent currently has no indication of what the output contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameter boardId is already documented with description and default value. The description does not add any additional semantics beyond what the schema provides, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List lists on a Trello board' clearly states the verb (list) and resource (lists), distinguishing it from sibling tools like list_boards or list_cards. However, it lacks additional specificity about scope or filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., search for specific lists, or use other list-related tools). The description does not mention prerequisites, such as requiring a board ID or the relationship to other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_list_workspacesList Trello WorkspacesA
List Trello workspaces visible to the authenticated member.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the read-only nature and the scope (visible to the authenticated member) but does not mention any pagination, limits, or response format. For a simple list, it is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, direct and without any extraneous words. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description could be more informative about what the return value looks like (e.g., list of workspace objects). It is complete enough for a simple list but lacks details on structure or behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so schema coverage is 100%. The description does not need to add parameter details. Baseline for 0 parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Trello workspaces visible to the authenticated member. The verb 'list' and resource 'workspaces' are specific, and it distinguishes from sibling tools like trello_list_boards (boards) and trello_list_cards (cards).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to view available workspaces but does not provide explicit guidance on when to use it versus alternatives or any prerequisites. It is implied from the context, but no exclusions or alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_move_cardMove Trello CardB
Move a card to a destination list id or exact list name.
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes | Trello card id. | |
| listId | No | Destination list id. | |
| boardId | No | Board id, required when using listName unless TRELLO_BOARD_ID is set. | |
| listName | No | Exact destination list name. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden. It only restates the action without disclosing side effects, permissions, idempotency, or what happens on success/failure. The description adds minimal behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the core action. It is appropriately brief but could benefit from structured guidance for the two destination options.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (4 params, no output schema), the description is minimal. It covers the basic operation but lacks details on param relationships, error handling, and return values, leaving some ambiguity for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters have descriptions. The tool description adds the context that listId and listName are alternatives ('or'), but does not clarify mutual exclusivity or the need for boardId when using listName, which is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Move a card' and the target 'destination list id or exact list name'. It distinguishes this tool from siblings like update, archive, or create cards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (to move a card to a specific list) and mentions two ways (by id or name), but does not provide explicit guidance on when to prefer one over the other or mention alternatives or prerequisites like boardId.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_search_cardsSearch Trello CardsA
Search cards by text. Uses TRELLO_BOARD_ID when boardId is omitted.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max cards to return. | |
| query | Yes | Search text. | |
| boardId | No | Optional board id filter. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must disclose behaviors. It mentions the boardId fallback but omits other traits like read-only nature, pagination, or search scope limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two-sentence description is highly concise with no filler. Each sentence adds distinct information (purpose and default behavior).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal. While schema covers parameters, missing details like searchable fields or output structure make it incomplete for a search tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds value by explaining the default boardId behavior, which is not in the schema. This clarifies parameter usage beyond basic descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search cards by text,' specifying verb and resource. It also mentions a default board fallback, which distinguishes it from sibling tools like list_cards that don't search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool vs alternatives. It implies text-based search usage but lacks context like search scope or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_update_cardUpdate Trello CardB
Update a Trello card title, description, due date, or archive state.
| Name | Required | Description | Default |
|---|---|---|---|
| due | No | Optional ISO due date. | |
| name | No | New card title. | |
| cardId | Yes | Trello card id. | |
| closed | No | Archive/unarchive the card. | |
| description | No | New card description. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description does not disclose behavioral traits such as idempotency, required permissions, or side effects of the update operation. For a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence without unnecessary words. However, it lacks structure such as bullet points or examples that could improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters and no output schema, the description is too minimal. It does not explain return values, error handling, or prerequisites. More details would be beneficial for a mutation tool with multiple update options.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with individual parameter descriptions. The description adds meaning by summarizing the main updatable fields, but this adds minimal value beyond what the schema already provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update') and resource ('Trello card') and lists the fields that can be modified (title, description, due date, archive state). It clearly distinguishes from siblings like 'trello_create_card' and 'trello_archive_card'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide when or when not to use this tool, nor does it mention alternatives among the sibling tools like 'trello_move_card' or 'trello_archive_card'. It implies usage for updating specific fields but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trello_whoamiCurrent Trello MemberA
Return the Trello member authenticated for this MCP server.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the tool returns the authenticated member, implying a read-only operation with no side effects. More detail on the return structure would be helpful but is not critical given the tool's simplicity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys all necessary information without any extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description is fully sufficient. It explains the tool's purpose completely given the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the baseline is 4. The description adds no parameter info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns the authenticated Trello member. It uses a specific verb ('Return') and resource ('Trello member'), and distinguishes itself from all sibling tools, which perform other operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: call this to get the current authenticated user's info. No alternatives exist among siblings, so explicit when-to-use guidance is not necessary, but the description could have stated a typical use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
15 tool updates
v0.1.0- First observed
trello_add_check_item - First observed
trello_add_checklist - First observed
trello_add_comment - First observed
trello_archive_card - First observed
trello_create_card - First observed
trello_get_board - First observed
trello_get_card - First observed
trello_list_boards - First observed
trello_list_cards - First observed
trello_list_lists - First observed
trello_list_workspaces - First observed
trello_move_card - First observed
trello_search_cards - First observed
trello_update_card - First observed
trello_whoami
TDQS
Scored across 15 tools
Each tool targets a distinct action on a specific Trello resource (board, list, card, checklist, comment, user). No two tools have overlapping purposes; even closely related tools like 'get_card' and 'list_cards' are clearly differentiated by scope.
All tools follow a consistent 'trello_verb_noun' pattern using lowercase with underscores. Verbs are imperative and descriptive (add, archive, create, get, list, move, search, update, whoami), with no mixing of conventions.
With 15 tools, the set covers the primary Trello workflows (boards, lists, cards, checklists, comments, search, user info) without being bloated. Each tool serves a clear purpose within the domain.
The tool set covers core operations for cards (CRUD + move/archive/search), checklists, comments, and boards (list/get). Missing board/list creation and deletion, but these are less common for typical agent tasks. Archiving is preferred over deletion, which is reasonable.
Maintenance
Related MCP Connectors
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Manage Superlist tasks and lists in plain language from any MCP-compatible AI agent.
Connect AI agents to 1000+ apps with managed authentication and tool-calling.
AI agents use CalmBoard MCP to access board data, tasks, insights, and project workflows.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables interaction with Trello through the Trello API, allowing users to manage boards, lists, and cards including creating, updating, deleting, and retrieving Trello data through natural language.734 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Trello boards, lists, and cards through the Trello REST API. Supports board management, card operations, member management, labels, and checklists through natural language.285 npm1ISC
- AlicenseNot gradedqualityDmaintenanceProvides seamless integration with Trello's API to manage boards, lists, and cards through natural language. It supports full CRUD operations, card movement, and the ability to load Trello resources directly into an LLM's context for analysis.MIT
- FlicenseAqualityDmaintenanceEnables AI assistants to manage Trello boards, lists, cards, comments, checklists, labels, and members through natural language.16-