search_catalog
A WebMCP tool distributed by Shopify. 99,664 of the sites we crawled carry a tool set that includes it (99.7% of vendor-distributed detections). This is a documented platform feature, not a vulnerability. Individual sites did not each choose it one by one.
What the tool declares
The description below is quoted as Shopify publishes it, in the distributed bundle:
Search the store catalog for products, collections, articles, and pages. Does NOT add anything to the cart; use add_to_cart for cart changes. If the user asks for a specific product variant, call get_product after search_catalog to inspect available variants, then show_variant to display one.
| Vendor | Shopify |
|---|---|
| Sites | 99,664 in 3 tool sets (64,429 + 31,153 + 4,082) |
| Declared by bundle versions | 0.1.0, 0.1.1, 1cd8a9f0, f427de6a |
| Read-only hint | readOnlyHint: true (the tool declares itself read-only) |
| Other hints | untrustedContentHint: true |
The wording of this description differs between bundle versions; the one above is from the newest version that declares the tool (f427de6a).
The input it asks for
| Field | Type | Required | Description |
|---|---|---|---|
catalog | object | yes |
The full input schema, as declared:
{
"type": "object",
"required": [
"catalog"
],
"properties": {
"catalog": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search query string."
},
"pagination": {
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "Max results per type (1-10). Defaults to 5.",
"default": 5,
"minimum": 1,
"maximum": 10
}
}
}
}
}
}
}
What we checked
We read the tool set the page declares and we never invoke a tool. We fetched and analysed the distributed bundle that declares this tool, so these copies carry no unverified-implementation signal. What a tool does is inferred from its name and description, and we have not yet published an accuracy measurement for that inference. These are measured indicators, not audits. The crawl is a sample, not a census.
Vendor documentation: https://shopify.dev/docs/api/web-mcp
Other tools in the same sets
add_to_cartbrowse_storecancel_cartget_cartget_productget_ucp_profilemanage_ordersproceed_to_checkoutsearch_shop_policies_and_faqsshow_variantupdate_cartupdate_cart_lines
Source
25d8fb700a3a3e973ea18e6ac678d15762cce58a46690334defa5b05b9142e13.
Declarations: captured from the vendor's distributed bundles, each checked against a recorded sha256.
See the Shopify tool sets
and what a tool declares and what a crawler cannot see.