Store Catalog
Server Details
Shopify and WooCommerce product catalogs for agents: list, search, full product with barcodes.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- agenttoolworks/mcp-servers
- GitHub Stars
- 0
TDQS
Score is being calculated.
Available Tools
5 toolsget_productGet one product in fullAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | No | The product handle (Shopify) or slug (WooCommerce), with store_url. Every list_products and search_products row carries it. | |
| store_url | No | 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. | |
| product_url | No | The product page URL, e.g. https://www.allbirds.com/products/mens-wool-runners. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the burden, and it does disclose a real behavioral trait: the call costs 1 credit. It also honestly flags conditional data availability ('stock where the store publishes it', rating only for WooCommerce). It omits auth requirements and failure behavior for invalid URLs, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The scope and the field inventory are front-loaded, and the calling instructions plus credit cost follow. The field enumeration is dense but relevant given the absence of an output schema; nothing is genuinely wasted, though the single long sentence could be split for scanability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, listing returned fields is the right compensation, and it covers variants, options, images, text, tags, rating plus the credit cost and the store_url/handle fallback. Auth prerequisites and behavior on an invalid or unsupported store are the remaining gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented in the schema, including the handle/slug duality and the accepted URL forms. The description restates the URL-or-store_url+handle pattern without adding format or validation detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (returns) and resource (one product) and explicitly characterizes scope as 'in full', listing the exact variant/option/image/description fields covered. An agent can distinguish this from list_products and search_products at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It specifies the two calling patterns (product page URL, or store URL + handle) and notes that every list_products and search_products row carries the handle, implicitly routing the agent from browsing tools to this one. It does not state when to avoid this tool or what to do when a store publishes no stock data beyond that caveat.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_usageGet usage and credit balanceAInspect
Returns your current plan, remaining credit balance and call volume over the last 30 days. Free to call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the cost profile ('Free to call') and the data window ('last 30 days'), which are genuine behavioral facts beyond the schema. It does not mention auth requirements or rate limits, so it falls short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the contents front-loaded and the cost note appended. Every clause earns its place; nothing is repeated from the schema or title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must hint at the return shape, and it does by naming the three returned fields and their window. No annotations exist either, and the 'free to call' note covers the main behavioral concern. Minor gap: no mention of formatting or staleness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case. The description adds no parameter semantics because none exist, and needs none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (usage) and enumerates exactly what is returned: plan, remaining credit balance, and call volume over the last 30 days. It is clearly distinguishable from the invoice-oriented siblings (extract_invoice, generate_invoice, validate_invoice, describe_coverage).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance and no named alternatives, but for a zero-parameter, cost-free read tool the implied usage ('check your balance/usage') is reasonably self-evident. It provides no routing conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_storeInspect a Shopify or WooCommerce storeAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| store_url | Yes | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses: it is a read operation ('Light read'), it is cheap ('costs 0.2 credit', 'it is cheap'), what it returns (platform type, catalog readability, currency, product count), and that other tools depend on it. It does not describe rate limits, failure modes, or auth needs, but for a lightweight detection tool the disclosure is strong.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with what it detects, then when to call it, then cost. Every sentence earns its place — no filler, no repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-param reconnaissance tool with no output schema and no annotations, the description covers purpose, output content (platform, readability, currency, count), cost, and the call-first convention. An agent has enough to call it correctly. Minor gap: no mention of what happens on failure or unreadable stores, but that is a small omission for this tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single parameter store_url is thoroughly documented in the schema (accepts homepage, collection page, category page, bare domain). The description adds no parameter detail beyond the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'detects whether a store runs Shopify or WooCommerce and whether its public catalog can be read', plus returns currency and product count. This is a distinct reconnaissance tool, clearly different from get_product/list_products/search_products. An agent can tell immediately what it does and how it differs from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Call it first on an unknown store' gives explicit when-to-use guidance. 'Every other tool needs a readable store' explains the prerequisite relationship with siblings (list_products, get_product, etc.), effectively routing the agent to call this first. Rarely is usage guidance stated this decisively.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_productsList a store's products, one page at a timeAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, from 1. Default 1. | |
| page_size | No | Products per page, at most 50. Default 25. | |
| store_url | Yes | 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 | No | A Shopify collection handle or WooCommerce category slug, when the URL does not already name one, e.g. 'sale'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral weight, and it does: it discloses the pagination contract ('a page at a time', use next_page) and the billing model ('Costs 1 credit per page'). It doesn't state rate limits, failure modes, or empty-result behavior, which keeps it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and output shape, then usage, then cost. Dense but every sentence adds information. Slightly run-on but no wasted clauses.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, output fields, scoping, pagination continuation, alternative tool and cost — enough for an agent to invoke correctly. Minor gaps: no error/empty behavior and no explicit note on the default page size, though the schema supplies defaults.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents store_url, page, page_size and collection in detail. The description adds only the 'collection' or 'collection' shorthand and the collection URL usage, which is marginal over the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (lists) plus resource (products) and platforms (Shopify/WooCommerce), and it names the exact fields returned. It is clearly distinguishable from get_product, which is explicitly called out for the single-product/variant case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-to-use (paginated product listing, optional scoping to a collection/category), names the alternative get_product with the condition that selects it, and explains how to continue pagination via 'next_page'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsSearch a store's products by keywordAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results, default 10 (Shopify stops at 10). | |
| query | Yes | What to search for, e.g. 'wool runner' or 'espresso'. | |
| store_url | Yes | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description carries the full burden well: it discloses the per-platform result cap (10 Shopify / 20 WooCommerce), that search uses the store's own public search, and that each call costs 1 credit. These are exactly the operational facts an agent needs before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence front-loading the action, scope, mechanism, return shape, caps, and cost. No filler; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete enough for a no-annotation, no-output-schema search tool: purpose, mechanism, result cap, and cost are all covered. It does not mention rate limiting, error/permission behavior, or pagination, which would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents all three parameters. The description still adds value by explaining the Shopify 10-result platform limit that explains the limit param's ceiliing and the store_url platform dependency.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Searches), resource (products), and scope (one store, matching a keyword, via the store's own public search). Clearly distinguishable from get_product (single product) and list_products (browse) named in the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says it searches ONE store by keyword and routes result shape to 'same compact shape as list_products.' It does not name when to prefer get_product or list_products instead, but the keyword-vs-browse distinction is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
get_product - First observed
get_usage - First observed
inspect_store - First observed
list_products - First observed
search_products
Related MCP Connectors
AI-agent product catalog: search, lookup & purchase routing over verified merchant data.
Agentic commerce gateway: discovery, search, checkout across Shopify/Woo/Odoo/PrestaShop.
UCP Catalog for independent WooCommerce stores: consented, federated, with live price checks.
Agent Commerce MCP — agent-native A2A storefront. Discovery, Stripe checkout, affiliate program.
Related MCP Servers
- AlicenseAqualityDmaintenanceKlarna-style product discovery for AI shopping agents. Makes product catalogs machine-readable so AI agents can search, compare, and purchase products programmatically.6MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to search enterprise Auto-ID products and exact SKUs, read live stock and current pricing, and explore variants, accessories, consumables and support relationships through a public read-only endpoint. It also surfaces manuals, firmware, drivers and other verified technical resources from the vendor's support center.-
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to browse product catalogs, search products with filters, and initiate checkouts, generating order summaries and checkout URLs.-
- AlicenseNot gradedqualityBmaintenanceFederated commerce search MCP server enabling AI agents to query real product offers, prices, and availability across independent WooCommerce stores without API keys or registration.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.