# unlink_items

Remove a relation between two items.

Agent View of the PolicyLayer registry record for `unlink_items`. HTML page: https://policylayer.com/tools/com-grabbitapp-grabblist/unlink-items

## Facts

- Tool: `unlink_items`
- Server: Grabblist (`https://mcp.grabbitapp.com/api/mcp`) — https://policylayer.com/tools/com-grabbitapp-grabblist.md
- Homepage: https://github.com/https://mcp.grabbitapp.com/api/mcp
- Risk category: Destructive (Critical risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 4 (3 required)
- Recommended policy verdict: Hidden

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `to_id` | string | yes | Second item ID |
| `reason` | string | no | Why this change was made (shown to user in change history) |
| `from_id` | string | yes | First item ID |
| `relation` | string | yes | The relation type to remove |

Parameters from the server's own tool schema.

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

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "unlink_items",
    "arguments": {
      "to_id": "<to_id>",
      "from_id": "<from_id>",
      "relation": "<relation>"
    }
  }
}
```

## Why unlink_items is rated Critical

An AI agent that decides to call unlink_items doesn't hesitate, doesn't double-check, and doesn't stop at one. Whatever it removes from Grabblist is gone. There is no undo for destructive operations.

## Use case

AI agents call unlink_items to permanently remove resources in Grabblist, typically in cleanup and lifecycle workflows. It does its job in a single call, and there is no undo.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "hide": [
    "unlink_items"
  ]
}
```

## Other tools on Grabblist (22)

- `delete_collection` — Destructive — https://policylayer.com/tools/com-grabbitapp-grabblist/delete-collection.md
- `delete_item` — Destructive — https://policylayer.com/tools/com-grabbitapp-grabblist/delete-item.md
- `remove_from_collection` — Destructive — https://policylayer.com/tools/com-grabbitapp-grabblist/remove-from-collection.md
- `ask_agent` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/ask-agent.md
- `get_collection_activity` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/get-collection-activity.md
- `get_item` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/get-item.md
- `get_item_graph` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/get-item-graph.md
- `get_item_history` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/get-item-history.md
- `get_wishlist` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/get-wishlist.md
- `list_collections` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/list-collections.md
- `search_saved` — Read — https://policylayer.com/tools/com-grabbitapp-grabblist/search-saved.md
- `add_item` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/add-item.md
- `add_to_collection` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/add-to-collection.md
- `create_collection` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/create-collection.md
- `link_items` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/link-items.md
- `ping` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/ping.md
- `restore_item` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/restore-item.md
- `send_feedback` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/send-feedback.md
- `set_pinned_items` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/set-pinned-items.md
- `update_collection` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/update-collection.md
- `update_item` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/update-item.md
- `update_price` — Write — https://policylayer.com/tools/com-grabbitapp-grabblist/update-price.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=com-grabbitapp-grabblist · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/com-grabbitapp-grabblist
