Your WooCommerce store is now readable by AI agents. It still isn't comparable — and that's the harder problem.
If you read my last post, you added an agent-readable API to your WooCommerce store — or you're counting on the WooCommerce MCP that shipped in 10.3. Either way, an AI assistant can now access more of your store data. But access is not the same as cross-merchant comparability.
You've solved visibility. You have not solved comparability. And comparability is the whole game.
Readable is not comparable
When someone tells an agent "find me a waterproof jacket under €150 in size M", the agent isn't shopping one store. It's lining up candidates from many stores and ranking them on the same axes: category, size, color, price including tax, availability right now.
To do that it needs every store to speak the same language for those axes. Reading one store is easy. Comparing fifty is the problem — because fifty WooCommerce stores describe the same product in fifty different ways.
The same t-shirt, fifty shapes
WooCommerce is open-source and composable. That's its strength for merchants and its liability for agents: there is no platform-enforced semantic model shared across stores, so every store invents its own.
The same cotton t-shirt, across three stores, looks like this to a machine:
size: M / Taglia M / 48
category: Apparel > Men > T-shirts / Magliette / Abbigliamento/Uomo
price: 29.00 (tax included) / 23.77 (tax excluded) / "29,00 €" as a string
the "color" attribute: a taxonomy term in one store, a custom field in another, baked into the title in a third
None of these is wrong. They're all valid WooCommerce. That's exactly why it's hard.
And it gets worse below the surface. In one real catalog I audited, a single dimensions field was being populated in about ten mutually incompatible shapes, and roughly one value in six was physically impossible when read as centimeters. One store. One field.
This is WooCommerce's tax, not a bug
Shopify has less of this problem at the platform boundary, because it controls more of the product and checkout model. That control is — not coincidentally — why it keeps showing up as the launch partner for every agentic surface.
Look at who went live first. ChatGPT's Instant Checkout launched in September 2025 with U.S. Etsy sellers first, and OpenAI announced over a million Shopify merchants as the next channel. Google's Universal Cart was announced at I/O 2026; Google named Nike, Sephora, Target, Ulta Beauty, Walmart, Wayfair, and Shopify merchants among the brands for upcoming select checkout features. Notice what's on neither list: a single WooCommerce store.
That's not a snub. It's structural. Agentic commerce launches where the catalog is already uniform — managed platforms, and big retailers with dedicated integration teams. The 4.3 million live WooCommerce stores (StoreLeads, May 2026) are the long tail, and the long tail is heterogeneous by construction.
The three answers that don't close the gap
"WooCommerce MCP already makes my store agent-ready." The MCP that shipped in 10.3 is a thin wrapper over your store's existing REST API — product and order operations, still in developer preview, with consumer shopping listed as a future step. It transports your data faithfully. It does nothing to reconcile your data with anyone else's. Readable, not comparable.
"schema.org normalizes it." schema.org can express variants, size, and color — Google added ProductGroup support back in 2024. But the values are free text, not a controlled vocabulary, so M, Taglia M, and 48 stay three different strings — and there's no shared category tree. It was built to earn rich results in search, not to make catalogs comparable across merchants. It reduces the chaos; it doesn't resolve it.
"The agent's model will just normalize on the fly." It can, per request — but normalizing millions of SKUs at query time is slow, costs money, and is non-deterministic: is 48 a EU clothing size, a shoe size, or a waist in centimeters? Comparison needs a stable key that means the same thing on every query, not a fresh guess each time. That's why the platforms are standardizing on structured feeds instead of leaning on inference at runtime.
What actually closes it
Not a prettier API. Not a richer feed. A normalization layer.
Something that maps each store's idiosyncratic vocabulary onto one shared, governed semantic frame — categories reconciled to a common tree, sizes and colors and attributes canonicalized, price normalized to a tax-explicit encoding — and does it once, as a durable decision, instead of re-guessing it on every query. It's the unglamorous part. It's also the part that decides whether a store is comparable or merely readable.
That's the layer I've been building underneath KaliCart: a federated catalog where heterogeneous WooCommerce stores resolve to a single comparable surface an agent can query and rank. The store stays itself. The agent sees one language.
The honest scope
This bites hardest for cross-merchant work — discovery, ranking, a cart that spans stores. A single store talking to a single agent feels it far less. And yes, schema.org and platform feeds shrink the problem at the edges.
But they don't make it disappear, because someone still has to map each heterogeneous store onto the shared frame. For Shopify, the platform does it. For millions of WooCommerce stores, no one does — unless a layer is built for exactly that.
The agentic web doesn't reward the prettiest storefront. It rewards the most impeccable source of truth. And impeccable doesn't mean exposed. It means normalized.
Giuseppe Socci — creator of KaliCart Bridge
bridge.kalicart.com · github.com/giuseppesocci-bot/kalicart-bridge · global.kalicart.com
Top comments (0)