Storefront MCP search_shop_catalog tool ignores category filter

## Issue Description

The `category` filter in Shopify’s MCP `search_shop_catalog` tool appears to be ignored or not working correctly. We’ve tested multiple ID formats and combinations, but the filter doesn’t seem to filter products as expected.

## What We’ve Tried

### 1. Collection ID Formats

**Test 1: Full Collection GID**

```json

{

“filters”: [

{

“category”: {

“id”: “gid://shopify/Collection/294971834481”

  }

}

]

}

```

**Result:** Returns 8 products, but includes products NOT in the collection (e.g., ASICS running shoes when filtering for “formal shoes” collection)

**Test 2: Collection ID Number Only**

```json

{

“filters”: [

{

“category”: {

“id”: “294971834481”

  }

}

]

}

```

**Result:** Returns 10 products (paginated), same as no filter - filter appears ignored

**Test 3: Collection as String (Invalid Format)**

```json

{

“filters”: [

{

“category”: “gid://shopify/Collection/294971834481”

}

]

}

```

**Result:** Error - “The property ‘#/filters/0/category’ of type string did not match the following type: object”

### 2. TaxonomyCategory ID Formats

**Test 4: Extracted TaxonomyCategory ID**

```json

{

“filters”: [

{

“category”: {

“id”: “aa-8-10”

  }

}

]

}

```

**Result:** Returns 20 products (should be 6), same as no filter - filter appears ignored

**Test 5: Full TaxonomyCategory GID**

```json

{

“filters”: [

{

“category”: {

“id”: “gid://shopify/TaxonomyCategory/aa-8-10”

  }

}

]

}

```

**Result:** Returns 20 products (should be 6), same as no filter - filter appears ignored

## Key Findings

1. **Filter Schema:** The tool schema shows `category` filter exists and expects `{“category”: {“id”: “string”}}` format

2. **Filter Ignored:** When query is empty, category filter appears to be completely ignored - returns same products as no filter

3. **Collection vs TaxonomyCategory:** Both Collection IDs and TaxonomyCategory IDs don’t work reliably

4. **Available Filters:** The `available_filters` response from MCP only includes “Availability” and “Price” - no category filters are returned

## Expected Behavior

When filtering by category, we expect:

- Products filtered to only those in the specified category/collection

- Consistent results regardless of query parameter

- Category filters to appear in `available_filters` response

## Actual Behavior

- Category filter is ignored when query is empty

- Category filter may have partial effect with query, but results are incorrect

- No category filters appear in `available_filters`

- Different ID formats return different (incorrect) results

Environment

- Shopify Storefront MCP endpoint: `https://{shop}.myshopify.com/api/mcp`

- Tool: `search_shop_catalog`

- Collection ID tested: `294971834481` (should contain 8 “formal shoes” products)

- TaxonomyCategory ID tested: `aa-8-10` (should contain 6 products)

## Questions

1. What is the correct format for category filter IDs?

2. Should Collections use a different filter type than TaxonomyCategory?

3. Why doesn’t the category filter work with empty queries?

4. Should category filters appear in `available_filters` response?

5. Is there a way to filter by Collection ID directly?