---
name: curated
description: Create, capture to, and read Curated lists through the hosted Curated MCP server. Use when the user wants to start a list of recommendations, save a link or pick to a list, read a list back, or find someone else's list.
---

# Curated

Curated (https://curated.network) is where people keep and share lists of recommendations: books, restaurants, videos, gear, anything. This skill teaches the workflow for its MCP server.

## Connect

For supported host setup and recovery, read https://curated.network/agent-setup/prompt.md. Human setup and the copyable prompt are at https://curated.network/agent-setup. Keep the original task in this conversation.

Reuse an existing Curated connection first. Otherwise connect to the hosted MCP server at https://mcp.curated.network using the client's supported connector settings, then complete OAuth in the browser. Claude, ChatGPT and other supported MCP clients use this same server. A pasted prompt cannot install a connector in every host. If you cannot configure it, explain the one settings step and preserve the original request.

Never ask for passwords, tokens, age attestations or terms acceptance in chat. The person signs in and reviews those in Curated. Authorization grants account-wide list access, not access to just the current draft. Publication requires a protected review in Curated.

Call `account_context` after connecting or reconnecting. Confirm the intended account before writing. If a protected content write or paid access requires missing requirements, offer its `requirementsUrl`, wait for the person to complete it, then retry. Save, Follow, email preferences and free Get updates require an authorized account, not creator onboarding. A connection badge alone does not prove tools work.

## Create and capture

1. Verify the account with `account_context`, then call `create_list` when the user asks for a new collection.
2. Copy the exact returned `slug`; never construct or guess it.
3. Call `add_item` with that slug and the supplied URL or title.
4. Preserve the user's reason in `note` without rewriting it.
5. Call `get_list_items` with the same slug to verify the durable result.

Use `create_if_missing=true` only when the user explicitly asked to create a missing list. Omit `list` only for a deliberate Inbox capture.

If the person already made a browser-local draft at https://curated.network/start, ask them to choose Keep in the original browser first. MCP cannot read unsubmitted browser storage. After it is kept, verify `account_context` and read the actual list ID/slug before continuing that same list. Do not create a second copy or treat the local draft URL as a public sharing link.

## Destination outcomes

- `captured`: the item is durably saved in the returned list.
- `needs_disambiguation`: nothing was written. Ask the user to choose from the returned candidates. If none are returned, offer to create the requested list or ask for an existing slug.

## Enrichment outcomes

- `pending`: saved; enrichment was accepted and may finish later.
- `completed`: enriched fields are persisted.
- `skipped`: saved, but enrichment did not run; report the reason.
- `failed`: saved, but enrichment failed; report the reason.
- `none`: saved, but no enrichment attempt is recorded yet.

Never translate `pending` into “completed.” Read the list again later and report the status it actually returns.

## Bring material from anywhere

Accept links, names, messy notes, copied conversations, screenshots and images when your host can read them. Extract grounded titles, source URLs and the person's notes into structured picks. Curated's MCP tools take titles, URLs and notes, not file attachments. Do not invent a link or identity from an unclear image. Ask one focused question or show uncertain candidates for review. A photo used as source material is different from an image attached to a pick; direct mixed file intake is not available yet.

Use `import_from_url` only for its supported Spotify, Letterboxd and Google Maps sources. For other pages, extract what your host can read and show the proposed picks before adding. If extraction is unavailable, offer pasted text or a title plus a source link.

## Finish, then keep going

Read back `list_items` or `get_list_items`. Report the saved destination, private/public status, saved count and any incomplete enrichment separately. Offer one optional next step: add another find, edit a note, or review sharing. Do not require a review of every correctly captured link.

Only offer `publish_list` when the person asks to publish. It returns `review_required` and a `reviewUrl`; nothing is published yet. The owner reviews their public handle, preview and visibility there and chooses Publish. Never claim publication from the request alone. Existing published lists change publicly when edited, so make that clear before editing one.

## Recovery

If disconnected or revoked, preserve the current request and reconnect through OAuth, then call `account_context` again. Never silently change accounts. If a destination is ambiguous, show choices and write nothing. If a response is lost, read the destination before retrying. Report partial results and retry only missing picks. Cancel stops further writes and keeps existing drafts.

## Safe retries

For `create_list`, `add_item` and `add_items`, generate one opaque `idempotency_key` per logical write and reuse it only when retrying the exact same request. A response lost in transit can be retried with the same key without creating another row. Reusing a key with changed input returns an error.

## Reading other people's lists

1. `search_lists` (or `find_lists`) finds published lists by topic, title, or curator.
2. `get_list` (or `get_list_items`) returns every item. Every list on Curated is free to read today.
3. `save_list` bookmarks a published list in Library under Saved; `saved_lists` reads back those bookmarks. Saving does not grant access, follow a curator or enable updates.
4. `unlock_list` grants access; `my_library` lists access entitlements. Those are separate from Saved.

## Follow, updates and email

Only on an explicit request, use `follow_curator` with the exact handle and desired `following` boolean. It is safe to repeat that same state. Following does not save a list, buy access or enable email.

Use `get_list_updates` for an explicitly requested published free list. It enables Access & updates without saving a bookmark, following the curator, sending email or buying paid access. Verify `my_library`; `library_updates` reads new picks. A paid list needs a separate access decision, never automatic checkout.

Email about a curator's new lists is separate consent. `curator_notifications` reads the setting when `enabled` is omitted; set an explicit boolean only when the person requests emails or asks to stop them. Following alone leaves email off. Check the advertised tool list first and offer the corresponding browser action if a tool is missing, without claiming success.

## Slash-command prompts

Clients that show MCP prompts offer `start_a_list`, `capture_to_list`, and `triage_inbox`. They follow the same rules as this guide.
