Use case · Store Catalog
Get product barcodes, SKUs and stock from a Shopify store
Read one Shopify product in full: every variant with its SKU, barcode, price, stock where the store tracks it and weight in grams, from the product page URL.
The job
Matching products across stores, or listing them on a marketplace, needs an identifier that is the same everywhere. That is the barcode: the GTIN, sold as UPC in North America and EAN in Europe. Shopify stores enter it per variant, and it is not part of the public catalog feed; it comes from the per-product endpoint.
Why an agent needs a tool for it
get_product takes the product page URL and returns every variant with its options, SKU, barcode, price, availability, stock where the store publishes it, and weight. An agent matching a product across retailers gets the identifiers it needs in one call.
The calls
One tool call.
{
"name": "get_product",
"arguments": {
"product_url": "https://www.allbirds.com/products/mens-wool-runners"
}
}{
"platform": "shopify",
"id": "1878193471557",
"handle": "mens-wool-runners",
"title": "Men's Wool Runner - Natural Grey (Light Grey Sole)",
"url": "https://www.allbirds.com/products/mens-wool-runners",
"vendor": "Allbirds",
"product_type": "Shoes",
"price": 110,
"currency": "USD",
"available": true,
"variant_count": 7,
"options": [
{
"name": "Size",
"position": 1,
"values": [
"8",
"9",
"10",
"11",
"12",
"13",
"14"
]
}
],
"requires_shipping": true,
"inventory_quantity": 515,
"image_count": 4,
"variants": [
{
"id": "31338073981072",
"title": "8",
"options": {
"Size": "8"
},
"sku": "WR3MNCW080",
"barcode": "843416126274",
"price": 110,
"available": false,
"inventory": 0,
"allows_backorder": false,
"weight_grams": 849
},
{
"id": "31330825109584",
"title": "9",
"options": {
"Size": "9"
},
"sku": "WR3MNCW090",
"barcode": "843416126281",
"price": 110,
"available": true,
"inventory": 88,
"allows_backorder": false,
"weight_grams": 946
}
],
"published_at": "2026-09-25T16:06:01-07:00",
"created_at": "2018-11-12T14:25:43-08:00"
}barcode and sku per variant, and inventory where the store tracks stock: size 8 is at 0 and unavailable, size 9 has 88. Shortened for this page: variants shortened from 7 to 2; image, updated_at, tags, description and images omitted for space.
Limits worth knowing
- A barcode is returned only when the store entered one. Many stores leave it empty.
- WooCommerce does not publish barcodes through its public Store API, so this works on Shopify stores only.
- Up to 100 variants and 10 images are returned per product; the answer says when variants were cut.
Pricing
1 credit for the calls on this page.
| Tool | Credits per call |
|---|---|
| get_product | 1 |
Credits are prepaid and shared across every server. Starter is $10 for 1,000 credits, packs never expire, and 100 credits are free without a card. Full pricing.
Prefer to run it without an MCP client? Store Catalog is also an Apify Actor, billed by Apify at $1.50 per 1,000 products, $0.005 per change detected.
Install
Connect Store Catalog to your agent.
A remote MCP server over Streamable HTTP. Get a free key, swap it in, and the calls above work as written, with answers reflecting the data on the day you call.
https://storecatalog.agenttoolworks.com/mcp
claude mcp add --transport http storecatalog \ https://storecatalog.agenttoolworks.com/mcp \ --header "Authorization: Bearer atw_live_your_key"
Setup for Claude Desktop, Cursor and Windsurf is in the docs.
Read next
- Store Catalog: every tool, the data sources and measured reliability.
- How to scrape a Shopify store, the long-form guide.
- Store Catalog on the Apify Store, for scheduled runs and bulk exports.
- Track a Shopify competitor's prices and stock
- Export a WooCommerce store's product catalog
- Check whether a site runs Shopify or WooCommerce
- Search a store's products by keyword, from an agent
- All use cases
Public data only, from the sources named on the product page. Not affiliated with any registry, list publisher, job board provider or store platform named here.