Skip to main content
Glama

RoboTrunk

Start research on a product now

enrich_product
Idempotent

Starts research on one product RoboTrunk lists that has no checked facts yet, now, so the facts can be read in a few minutes. The first call starts it and answers started straight away, with an estimate of when it will be done once enough recent runs exist; it never waits for the research. Call this tool again with the same merchant and product_id at any time to see where it is up to: running (started at, expected by) or done. When it is done the checked facts, each with its source, are in check_product and on the product's page. Use it for a listed product that check_product or get_product shows with no checked facts: its sourced findings can help the person choose. A product that already has checked facts answers done and starts nothing, and a repeat call never starts a second research. Not for browsing; use search_catalog. Error recovery: INVALID_REQUEST names the field to fix; PRODUCT_NOT_FOUND means RoboTrunk does not list it, so call search_catalog; RESEARCH_KEY_LIMIT, RESEARCH_ADDRESS_LIMIT and RESEARCH_BUSY say how long to wait, then call again; RESEARCH_DAILY_LIMIT means no more can be started today, so carry on with check_product and say there are no checked facts; RESEARCH_PAUSED or RESEARCH_UNAVAILABLE means research is not running right now, so carry on without it and try again later; a failed answer carries RESEARCH_FAILED, RESEARCH_TIMED_OUT, RESEARCH_INTERRUPTED or RESEARCH_NOT_STARTED, so call again once to start it afresh; ENRICH_FAILED (or any other unexpected error): retry once, then call submit_feedback. Next: check_product to read the findings, then create_checkout. Full guide: get_tool_guide or /agent/tools.json#enrich_product Example call: {"merchant":"anbbaby-com","product_id":"gid://shopify/Product/1234567890"}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
merchantYesThe store slug, as search_catalog or get_product returned it.
product_idYesThe product_id, as search_catalog or get_product returned it, or its bare numeric Shopify id. Example: "gid://shopify/Product/1234567890" or "1234567890", never a page link.
shopping_session_idNoOptional server-issued shopping session correlation ID. It is not purchase authority.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only say non-read-only, open-world, idempotent, non-destructive; the description adds the substantive behavior: the call never blocks, it reports started/running/done states with an ETA once enough runs exist, a repeat call never starts a second run, and an already-researched product answers done and starts nothing — all consistent with idempotentHint=true. It also discloses quota and outage conditions (RESEARCH_KEY_LIMIT, DAILY_LIMIT, PAUSED, UNAVAILABLE) that no annotation communicates.

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, then poll semantics, then when-to-use, then exclusions, then errors, then next steps — well front-loaded and every block is actionable. The error-recovery enumeration is long and partly duplicated by the get_tool_guide pointer, so it could be tightened, but it is dense rather than padded.

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 an asynchronous, quota-limited, open-world mutation tool with no output schema, the description supplies everything an agent needs: non-blocking contract, state vocabulary, idempotency guarantee, failure taxonomy with recovery actions, and where results land. No material gap remains.

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 description coverage is 100%, so the schema already explains merchant, product_id and the optional shopping_session_id precisely, including the bare-numeric-id allowance the description repeats. The description adds only usage-level meaning (pass the same merchant and product_id to poll) plus a literal example call, which is a small increment over structured data rather than new parameter semantics.

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?

Specific verb and resource: starts research on one listed product that has no checked facts yet, and returns immediately. It explicitly distinguishes itself from check_product (which reads findings) and search_catalog (browsing), so an agent can place it among siblings without opening a schema.

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?

States the exact trigger (a product that check_product or get_product shows with no checked facts), the anti-pattern ("Not for browsing; use search_catalog"), the polling pattern with the same arguments, and the follow-up path (check_product, then create_checkout). It goes further with a per-error-code recovery table, so nothing about when-to-call or what-to-do-on-failure is left to inference.

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.

Resources