Skip to main content
Glama
hermoso-ai

Hermoso

Official

Save ads to the swipefile

save_to_swipefile
Idempotent

Save ads and creatives into named swipefile collections, creating the collection if needed. Re-saving the same ad moves it instead of duplicating, keeping research organized for future ad planning.

Instructions

Save one or more ads/creatives to a named SWIPEFILE collection, creating the collection if it does not exist — the headless twin of the ♥ on every ad card in the web app. Use it whenever research turns up something worth keeping: a competitor ad from search_meta_ads / pull_competitor_ads, an organic post, or one of your own renders. Saved ads persist to the workspace board the web Swipefile tab shows, and feed the taste signal every future ad is planned against. De-dupes: re-saving the same ad (same key/link/media) MOVES it into the named collection instead of duplicating it. Free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYesthe ads to save
collectionYesthe collection name — an existing one, or a new one to create

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.1.243
    • addedInput schema / properties / items / items / properties / pageName
      Added value: +{
      +  "description": "alias of advertiser",
      +  "type": "string"
      +}
    • addedInput schema / properties / items / items / properties / page_name
      Added value: +{
      +  "description": "alias of advertiser: the field search_meta_ads returns, accepted as-is",
      +  "type": "string"
      +}
  2. Addedv0.1.161

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only signal idempotent, non-destructive, non-read-only behavior; the description adds that saves persist to the workspace Swipefile board and influence future ad planning. It also explains de-duplication semantics clearly: re-saving the same ad 'MOVES it into the named collection instead of duplicating it'. This goes well beyond the structured hints and contradicts nothing.

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

Conciseness5/5

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

Every sentence carries information: purpose, creation behavior, UI analogy, use cases, persistence side effects, de-dupe rule, and cost. The structure front-loads the verb and resource before elaborating, and there is no filler.

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?

With a detailed input schema and useful annotations, the description covers the operation, its persistence side effects, de-dupe behavior, and the exact situations where an agent should call it. No return-value explanation is necessary because there is no output schema and the outcome is clear from the description.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents collection and items, including key derivation and idempotency. The description's mention of a 'named collection' and create-if-missing behavior restates the schema's collection description without adding new field-level semantics. It stays at the baseline 3 because the schema carries the parameter documentation burden.

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 opening sentence names a specific verb ('Save'), resource ('ads/creatives'), and target ('named SWIPEFILE collection') and adds the create-if-missing behavior. The 'headless twin of the ♥ on every ad card' metaphor clearly ties it to the web app's save action and separates it from other save_* siblings.

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

Usage Guidelines4/5

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

The description explicitly says 'Use it whenever research turns up something worth keeping' and enumerates concrete sources: competitor ads from search_meta_ads / pull_competitor_ads, organic posts, or own renders. It does not give when-not-to-use guidance or name alternative storage tools like save_to_drive, so it reaches the 'clear context, no exclusions' level rather than full exclusion guidance.

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

Deploy Server

Other Tools