# attach_data_to_card

Attach binary data (image, markdown, PDF, text, etc.) to a card from base64-encoded data or a data URL. Use this for any non-image content. For image/screenshot uploads with PNG defaults, see attach_image_data_to_card.

Agent View of the PolicyLayer registry record for `attach_data_to_card`. HTML page: https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/attach-data-to-card

## Facts

- Tool: `attach_data_to_card`
- Server: Trello (`@delorenj/mcp-server-trello`) — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello.md
- Install: `npx -y @delorenj/mcp-server-trello`
- Homepage: https://github.com/delorenj/mcp-server-trello
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "attach_data_to_card",
    "arguments": {}
  }
}
```

## Why attach_data_to_card is rated Medium

This tool modifies card state by adding attachments but does not delete, execute code, or move money. The attachment operation is reversible (attachments can be detached), making it Write rather than Destructive. Severity is medium because malicious attachment of large files or inappropriate content could disrupt workflows, but the blast radius is limited to a single card's attachments.

From the tool's own definition: "Tool description states 'Attach binary data... to a card' and 'uploads', indicating creation/modification of data on Trello cards. This is reversible—attachments can be removed or replaced."

## Use case

AI agents use attach_data_to_card to create or update resources in Trello, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Trello environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Trello:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "attach_data_to_card": {
      "limits": [
        {
          "counter": "attach_data_to_card_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Trello (49)

- `archive_list` — Destructive — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/archive-list.md
- `delete_checklist_item` — Destructive — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/delete-checklist-item.md
- `delete_comment` — Destructive — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/delete-comment.md
- `delete_label` — Destructive — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/delete-label.md
- `download_attachment` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/download-attachment.md
- `find_checklist_items_by_description` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/find-checklist-items-by-description.md
- `get_acceptance_criteria` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-acceptance-criteria.md
- `get_active_board_info` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-active-board-info.md
- `get_board_custom_fields` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-board-custom-fields.md
- `get_board_labels` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-board-labels.md
- `get_board_members` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-board-members.md
- `get_card` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-card.md
- `get_card_comments` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-card-comments.md
- `get_card_history` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-card-history.md
- `get_cards_by_list_id` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-cards-by-list-id.md
- `get_checklist_by_name` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-checklist-by-name.md
- `get_checklist_items` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-checklist-items.md
- `get_lists` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-lists.md
- `get_my_cards` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-my-cards.md
- `get_recent_activity` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/get-recent-activity.md
- `list_boards` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/list-boards.md
- `list_boards_in_workspace` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/list-boards-in-workspace.md
- `list_workspaces` — Read — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/list-workspaces.md
- `add_card_to_list` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/add-card-to-list.md
- `add_cards_to_list` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/add-cards-to-list.md
- `add_checklist_item` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/add-checklist-item.md
- `add_comment` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/add-comment.md
- `add_list_to_board` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/add-list-to-board.md
- `archive_card` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/archive-card.md
- `assign_member_to_card` — Write — https://policylayer.com/tools/io-github-delorenj-mcp-server-trello/assign-member-to-card.md
- …and 19 more: https://policylayer.com/tools/io-github-delorenj-mcp-server-trello.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-delorenj-mcp-server-trello · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-delorenj-mcp-server-trello
