Store Catalog

Shopify and WooCommerce product catalogs for agents: list, search, full product with barcodes.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
84%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,038Tokens (tool definitions)
~1.5 KBTypical response size
Moderate attention impact (0.81% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "storecatalog": {
      "url": "https://storecatalog.agenttoolworks.com/mcp"
    }
  }
}

Remote endpoints

https://storecatalog.agenttoolworks.com/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢inspect_store(store_url)

Detects whether a store runs Shopify or WooCommerce and whether its public catalog can be read, and returns its currency and how many products it publishes. Call it first on an unknown store: it is cheap, and every other tool needs a readable store. Light read: costs 0.2 credit.

Input Schema

{
  "type": "object",
  "properties": {
    "store_url": {
      "type": "string",
      "minLength": 4,
      "description": "The store's address: a home page (https://www.allbirds.com), a Shopify collection page (/collections/mens) or a WooCommerce category page (/product-category/shoes/). 'allbirds.com' works too."
    }
  },
  "required": [
    "store_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_products(store_url, collection, page, page_size)

Lists the products of a Shopify or WooCommerce store, a page at a time, in a compact shape: title, URL, vendor, type, price range, sale price, currency, in stock, variant count, main image. Pass a collection or category page URL, or 'collection', to list only that part. Use 'next_page' from the answer to continue. For one product's variants, barcodes and stock, call get_product. Costs 1 credit per page.

Input Schema

{
  "type": "object",
  "properties": {
    "store_url": {
      "type": "string",
      "minLength": 4,
      "description": "The store's address: a home page (https://www.allbirds.com), a Shopify collection page (/collections/mens) or a WooCommerce category page (/product-category/shoes/). 'allbirds.com' works too."
    },
    "collection": {
      "description": "A Shopify collection handle or WooCommerce category slug, when the URL does not already name one, e.g. 'sale'.",
      "type": "string",
      "minLength": 1
    },
    "page": {
      "description": "Page number, from 1. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "page_size": {
      "description": "Products per page, at most 50. Default 25.",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "store_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_product(product_url, store_url, handle)

Returns one product of a Shopify or WooCommerce store in full: every variant with its options, SKU, barcode (GTIN/UPC/EAN, Shopify), price and sale price, stock where the store publishes it, weight in grams; options, images with alt text, description as plain text, tags, rating (WooCommerce). Pass the product page URL, or the store URL and the product handle. Costs 1 credit.

Input Schema

{
  "type": "object",
  "properties": {
    "product_url": {
      "description": "The product page URL, e.g. https://www.allbirds.com/products/mens-wool-runners.",
      "type": "string",
      "minLength": 8
    },
    "store_url": {
      "type": "string",
      "minLength": 4,
      "description": "The store's address: a home page (https://www.allbirds.com), a Shopify collection page (/collections/mens) or a WooCommerce category page (/product-category/shoes/). 'allbirds.com' works too."
    },
    "handle": {
      "description": "The product handle (Shopify) or slug (WooCommerce), with store_url. Every list_products and search_products row carries it.",
      "type": "string",
      "minLength": 1
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢search_products(store_url, query, limit)

Searches one Shopify or WooCommerce store for products matching a keyword, through the store's own public search, and returns the matches in the same compact shape as list_products. Up to 10 results on Shopify (its search limit), up to 20 on WooCommerce. Costs 1 credit.

Input Schema

{
  "type": "object",
  "properties": {
    "store_url": {
      "type": "string",
      "minLength": 4,
      "description": "The store's address: a home page (https://www.allbirds.com), a Shopify collection page (/collections/mens) or a WooCommerce category page (/product-category/shoes/). 'allbirds.com' works too."
    },
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "What to search for, e.g. 'wool runner' or 'espresso'."
    },
    "limit": {
      "description": "Maximum results, default 10 (Shopify stops at 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "store_url",
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_usage

Returns your current plan, remaining credit balance and call volume over the last 30 days. Free to call.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools