# Grabblist

> Save and organize web finds in persistent, user-controlled collections for AI assistants.

- name: com.grabbitapp/grabblist
- version: 2.1.0
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 75/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.grabbitapp%2Fgrabblist
- tools: https://api.protogrid.dev/v1/servers/com.grabbitapp%2Fgrabblist/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "grabblist": {
      "type": "http",
      "url": "https://mcp.grabbitapp.com/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 85
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-97% ~updated-68d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 75/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-03-26; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 22 of 22 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 4,805 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 8 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 22, about 4,805 tokens to load them all
- tool set hash: 334a0e9fa13af950adf0609156275aa9
- tools last changed: 2026-10-03T18:32:07.118Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.grabbitapp/grabblist.svg)](https://protogrid.dev/servers/com.grabbitapp/grabblist)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-03 `ask_agent` removed
  - Delegate a task to Grabblist's built-in AI assistant. The agent knows the user's Grabblist and can answer questions, compare items, give shopping advice, or analyze saved products. Use this when you want a second opinion or a specialized shopping assistant perspective. Requires the user to have an Anthropic API key configured in Settings.
- 2026-10-03 `send_feedback` changed (description, annotations) **meaning changed**
  - before: Send feedback, bug report, or feature request to the Grabbit team. Use this when you encounter parsing failures, missing features, broken URLs, or have improvement suggestions. The team reads these to improve the product. Be specific about what went wrong and where.
  - after: Send feedback, a bug report or a feature request to the Grabblist team. Only call this when the user asks to report something, or agrees after you offer to report a problem (parsing failure, broken URL, missing feature); show them the message first. Be specific about what went wrong and where.
- 2026-10-03 `set_pinned_items` changed (annotations)
- 2026-10-03 `update_collection` changed (annotations)
- 2026-10-03 `remove_from_collection` changed (annotations)
- 2026-10-03 `update_item` changed (inputSchema, annotations)
- 2026-10-03 `update_price` changed (annotations)
- 2026-10-03 `add_item` changed (description, inputSchema)
  - before: Save an item to the user's Grabblist. Creates a static snapshot — Grabblist does not monitor prices or auto-update data. Only include fields with values available from the source. If no image is provided, the server attempts to fetch og:image automatically.
  - after: Save an item to the user's Grabblist. Creates a static snapshot — Grabblist does not monitor prices or auto-update data. Only include fields with values available from the source. Price is optional: omit it for videos and other things without a price. If no image is provided, the server attempts to fetch og:image automatically.

Full history: https://api.protogrid.dev/v1/servers/com.grabbitapp%2Fgrabblist/changes

## Remotes

- https://mcp.grabbitapp.com/api/mcp (streamable-http, auth none, reachable true, uptime30d 0.974359)

## Packages

_none_

## Tools (22)

- `add_item`: Save an item to the user's Grabblist. Creates a static snapshot — Grabblist does not monitor prices or auto-update data. Only include fields with values available from the source. Price is optional: omit it for videos and other things without a price. If no image is provided, the server attempts to fetch og:image automatically.
- `add_to_collection`: Add a saved item to a collection. Both the item and collection must already exist.
- `create_collection`: Create a new collection (folder) in the user's Grabblist to organize saved items.
- `delete_collection`: Permanently delete a collection. Items inside are not deleted — they stay in the Grabblist.
- `delete_item`: Remove one or more items from the user's Grabblist (soft-delete). Pass a single id or an array of ids for batch operations.
- `get_collection_activity`: Get recent activity on a collection — additions, removals, edits.
- `get_item`: Get full details of a saved item by ID. Returns a static snapshot from the user's Grabblist.
- `get_item_graph`: Get all relations for an item — alternatives, complements, upgrades, duplicates. Returns the item and all connected items with their relation types.
- `get_item_history`: Get the change history for a saved item — who changed what and when.
- `get_wishlist`: Get all saved items from the user's Grabblist. Each item is a static snapshot — data reflects the moment it was saved, not current prices.
- `link_items`: Create typed relations between items: alternative (A or B), complement (A and B together), upgrade (B replaces A), duplicate (same item different site), same_seller. Supports single pair (from_id, to_id, relation) or bulk (pairs array).
- `list_collections`: List all collections OR get a specific collection with its items. Without id: returns all collections with counts/values. With id: returns that collection's metadata and all items inside (with optional filters).
- `ping`: Test connectivity to Grabblist and return service version.
- `remove_from_collection`: Remove one or more items from a collection. Pass a single item_id or an array of item_ids for batch removal. Items are NOT deleted — they stay in the Grabblist.
- `restore_item`: Restore one or more deleted (archived) items back to the Grabblist. Pass a single id or an array of ids for batch restore.
- `search_saved`: Search within the user's saved items by keyword
- `send_feedback`: Send feedback, a bug report or a feature request to the Grabblist team. Only call this when the user asks to report something, or agrees after you offer to report a problem (parsing failure, broken URL, missing feature); show them the message first. Be specific about what went wrong and where.
- `set_pinned_items`: Set the pinned "Top Picks" items for a collection (max 3). Pinned items are highlighted on the share page.
- `unlink_items`: Remove a relation between two items.
- `update_collection`: Update a collection's name, icon, description, budget, or sharing status. Only provide the fields you want to change — omitted fields stay unchanged. Set is_public=true to share (returns public URL), is_public=false to unshare.
- `update_item`: Edit fields on one or more saved items. Pass a single id or an array of ids for batch updates (same fields applied to all). For batch: attributes are REPLACED not merged, og:image fallback is skipped.
- `update_price`: Manually update the price on a saved item. Records old and new price for comparison. This is a manual correction, not automatic price tracking.
