# attach_file_to_card

Attach any file to a card from a URL on a specific board

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

## Facts

- Tool: `attach_file_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_file_to_card",
    "arguments": {}
  }
}
```

## Why attach_file_to_card is rated Medium

Attaching a file to a card is a data modification action that persists in Trello but can be undone (attachment can be removed). It does not irreversibly destroy data (not Destructive), execute arbitrary code (not Execute), involve financial transactions (not Financial), or merely read data (not Read).

From the tool's own definition: "Tool description states 'Attach any file to a card' which modifies card state by adding an attachment. This is a reversible write operation (attachments can be removed)."

## Use case

AI agents use attach_file_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_file_to_card": {
      "limits": [
        {
          "counter": "attach_file_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
