Skip to main content
Glama

Get Collection Contents

get_collection_contents
Read-only

Fetch one page of the items saved in a collection, or in everything the user saved: iOS screens, iOS flows, web screens, web flows or website sections, one kind per call. id is a collection id from list_collections, the UUID after /collections/ in a Mobbin collection URL (https://mobbin.com/collections//...), or all-saved for everything saved for the user's Mobbin MCP connection. To find one specific item the user saved, read all-saved without asking which collection; it holds every save. Items come newest save first. collection.counts says how many items of each kind the target holds, so you know the number of pages before reading. Read a target in full when it holds 100 screens or sections, or 30 flows, of the kind or fewer. When it holds more, tell the user how many there are, read the first 3 pages, and ask what to look for (an app, a pattern) before reading further, unless they asked for everything. A page can hold fewer than limit items and still have a next page. You can read at most 20 pages of a kind. Older saves past that cannot be fetched here. When has_next_page is false on page 20 and the counts say more remain, tell the user and suggest they gather what they need into a collection. Each item carries the user's team's comments on it, oldest first. Read them: they hold the team's notes on the item, such as why it was saved or what they discussed. Screens list screen_patterns and ui_elements, sections list section_patterns, flows list actions. Use them with app_name or site_name to pick the items that match the request, e.g. the saved login screens or everything saved from Airbnb, instead of using every item. Every preview image follows a text label with the item id (Screen <id>, Section <id>, Flow <id>: screen <n>/<total>; 3 previews per flow). Examine the previews to understand each item's actual content; do not describe items from metadata alone. Inline images are low-res previews for you to read, not for the user. Each result's image_url is the high-resolution image. Whenever the user wants to save, export, embed, or paste a result (files, Figma, Notion, docs, slides), download it from image_url instead of reusing the inline preview. Image URLs expire after 30 days, so download the file rather than linking to it; link to mobbin_url when citing. When you present items, cite each one as a markdown link to its mobbin_url.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>",
      "content_type": "<content_type>"
    },
    "name": "get_collection_contents"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesA collection id from list_collections, or "all-saved" for everything saved for the user's Mobbin MCP connection.
pageNo1-based page. `has_next_page` says whether another follows.
limitNoItems per page. Default 20 for screens and sections, 5 for flows. Flows allow at most 10, as each flow inlines 3 previews. Use the same value on every page when paging through a target. Pages are counted in units of `limit`, so changing it skips or repeats items.
platformNoRequired for screens and flows. Ignored for sections.
output_toolNoThe product the results go into next, not a later step, if known, e.g. Figma, Paper, Notion. Product name only. When the results go into more than one product, name the one the user asked for first. Not the search source: Mobbin only when the results go back to Mobbin. Omit when unknown. MUST be the same across all calls for the same task.
task_intentNoOne short sentence summarizing the user's overall task. Helps return more relevant results. Write it in English even when the conversation is in another language. MUST be the same across all calls for the same task. Do NOT include verbatim user messages, conversation history, file contents, or personal data.
content_typeYesWhich kind of saved item to fetch.
image_formatNoImage format. Use jpg if your client does not support webp.webp
output_destinationNoWhat you will do with the results after this call. Choose by what gets made with the results, not by the search itself. When the request does not say, go by where you are running: a coding agent in a repository means `code`, a design tool means `design_tool`, a plain chat host means `chat`. Helps return results in the form the workflow needs. `code`: implement or change UI in a codebase or coded prototype, also when looking up examples to base it on first, e.g. React, Swift, HTML/CSS, v0, Lovable. `design_tool`: recreate or put results on a design canvas, e.g. Figma, Paper, Pen.dev, MagicPath. `doc`: write a report, PRD, spec, audit or slides, e.g. in Notion, Google Docs or Slides. `reference_library`: only when saving is the ask: the user wants the results kept for later in a folder, notes or a Mobbin collection. Looking things up to build, design or write from is NOT this. `chat`: only answer in the conversation; the user has not asked you to build, design, write or save anything. `other`: an unlisted destination, none of the above, e.g. posting the results to Slack or email. MUST be the same across all calls for the same task.

Output Schema

NameRequiredDescriptionDefault
pageYes1-based page number of this batch.
itemsYesNewest save first. Can hold fewer than `limit` items while `has_next_page` is still true.
collectionYes
has_next_pageYesWhether another page follows.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly/openWorld=false/destructive=false; the description adds substantial behavior beyond that: pages can be short yet have a next page, older saves beyond page 20 are unretrievable, image URLs expire after 30 days, inline previews are low-res and not for the user, and each item carries team comments oldest-first. These are exactly the operational traits an agent could not infer from the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and nearly every sentence carries an operational rule, but the body is a single dense block of roughly a dozen policy clauses with no paragraph separation, making pagination rules, image handling, and citation rules harder to scan than they need to be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter paginated retrieval tool with an output schema, the description covers the target selection, pagination strategy, preview-vs-high-res image distinction, expiration, and output citation format. Nothing an agent needs to call this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description nevertheless adds real meaning for `id` by documenting the Mobbin URL form (/collections/<id>/) and that `all-saved` aggregates every save, and it explains why `limit` must stay constant across pages and why counts let you predict page totals. It does not add much for page/platform/image_format/output_destination/task_intent beyond what the schema already says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb (fetch), resource (items saved in a collection or all-saved), and constraint (one kind per call, one page at a time). It distinguishes itself from list_collections and the search_* siblings by naming where the id comes from and by naming `all-saved` as the union target.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit routing rules are given: read `all-saved` without asking when hunting a single item, read a target in full only when it holds <=100 screens/sections or <=30 flows, otherwise read 3 pages and ask the user. It also states the 20-page hard ceiling and what to do when the ceiling is hit, which is genuine when/when-not guidance rather than description of the resource.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.