Automates JiGR Gilmours product data capture in bulk using the JiGR bookmarklet. Use this skill whenever asked to scrape Gilmours products, run the bookmarklet loop, capture pricing/nutrition from Gilmours, or batch-enrich the JiGR library from Gilmours. Phrases like "scrape these items", "run the bookmarklet on these", "capture Gilmours data", "go through the Gilmours queue" all trigger this skill.
Captures product data (pricing, nutrition, allergens, ingredients) from Gilmours wholesale site into the JiGR library. The agent drives the loop — one product per cycle. The JiGR bookmarklet does the actual scraping and posting.
tabs_context_mcp, javascript_tool, navigatecartId or effectiveAccount needed — the Gilmours session cookie handles
authentication. Never add these params to navigation URLs.CoWork uses its own separate Chrome MCP connection. It does NOT share tab groups with any other Claude account (strategic, dev@jigr, etc.). This means:
tabs_context_mcp will show different tab IDs than any other sessiontabs_context_mcp first to confirm the Gilmours tab is visibleThe agent is the loop. The browser is the worker.
Each product = one cycle. Every single step requires a real tool call that returns a real observable result. You cannot narrate or simulate any step. If you have not made a tool call and seen its output, the step has not happened.
STEP 1: NAVIGATE — call navigate to direct product URL → confirm URL via tabs_context_mcp
STEP 2: INJECT — call javascript_tool to inject bookmarklet script tag
STEP 3: WAIT — call tabs_context_mcp repeatedly until URL changes to ccrz__ProductList
STEP 4: NEXT — move to STEP 1 for the next SKU
There is no step that does not require a tool call with a real result. Describing what you are doing is not doing it. Each step below specifies exactly which tool to call and exactly what output proves the step is complete.
Narrating steps instead of executing them.
Wrong:
"[STEP 1] Navigating to product page for SKU 5274969... [STEP 2] Injecting bookmarklet..."
This is text output. Nothing happened in the browser. No tool was called.
Right:
Call
navigatewith the product URL. Then calltabs_context_mcp. Read the returned URL. If it containsccrz__ProductDetailsand the SKU, STEP 1 is done. Only then proceed to STEP 2.
Every step has a required proof. If you cannot show the proof, the step did not happen. Do not move to the next step.
Call tabs_context_mcp. Find the tab with URL containing online.gilmours.co.nz.
Note the tab ID. If no Gilmours tab found: stop and tell Steve.
Do NOT extract cartId or effectiveAccount. They are not needed.
SELECT regexp_replace(product_page_url, '.*[?&]sku=([^&]+).*', '\1') AS url_sku,
vendor_product_name
FROM vendor_library_items
WHERE product_page_url ILIKE '%gilmours%'
AND item_verified_at IS NULL
AND (is_ignored IS NULL OR is_ignored = false)
AND product_page_url ILIKE '%sku=%'
AND store_location = 'north_shore'
ORDER BY vendor_product_name
LIMIT 30;
Skip any extracted url_sku that starts with 1 (e.g. 1034231) — these
are internal CSV codes, not valid Gilmours URL SKUs. Move to the next row silently.
Announce to Steve:
"Starting scrape. [N] SKUs queued. First: [product name]. Running now."
Then begin the loop immediately — do not wait for confirmation.
Call navigate with this URL: