AI shopping assistants can't see your products, or they see half the data and skip you.
ChatGPT, Perplexity, Gemini and the agents built on them answer "which solid-oak extending table seats eight for under $1,500?" with a shortlist built from product data. Anything with a missing dimension, an empty material field, a description made of adjectives or last week's price gets dropped. Apimio keeps one complete record per product, scores it, syncs it to every Shopify store, and publishes an agent-ready feed plus an MCP server so an assistant can read your catalog as well as your own team can (Advanced and Enterprise plans).
The numbers behind an agent-ready catalog
Real limits and real counts. The first is OpenAI's, the rest are Apimio's.
An AI agent filters before it ranks
Search engines rank whatever they find. Shopping assistants first discard everything that does not answer the question's constraints, then rank what is left. Incomplete product data is not a weak result. It is no result.
What goes wrong today
What Apimio does about it
The assistant never sees you
A shopper asks for a solid-oak extending table under $1,500 that seats eight. If your record does not say "oak", lacks the extended length and lists "Furniture" as its only category, you are filtered out before ranking starts. Same for a fashion brand without fabric composition.
One complete record per product, scored
Catalog Hub holds every attribute, variant, image and identifier on one canonical record. Quality Guard scores it against your category rules and Publish Gate holds incomplete products as drafts, so the fields an assistant filters on exist before anything publishes.
Half the attributes live somewhere else
Dimensions sit in the supplier's spreadsheet, materials in a metafield on one store but not the other, GTINs in an ERP nobody exports from. Shopify Catalog forwards what is in Shopify; a feed exports what is in its source. Neither invents the fields you never filled in.
Categories resolved to Google's product taxonomy
Product Feeds maps your merchant categories to Google's product taxonomy once. The agent-ready feed carries the resolved path, such as Furniture > Tables > Kitchen & Dining Room Tables, in the same ">" separated form OpenAI's product_category field uses (Advanced and Enterprise plans).
Descriptions written to be skimmed, not read
"Elevate your living room" gives a language model nothing to match against a question. OpenAI's spec allows a 5,000-character plain-text description and asks for facts. Most Shopify descriptions are eighty words of adjectives and an HTML table the feed strips out.
Plain-language descriptions at catalog scale
Apimio AI drafts factual descriptions, SEO titles and translations from the attributes already on the record: material, dimensions, finish, care. Every draft is previewed before it saves, opt-in and token-metered. The agent feed receives plain text, not storefront HTML.
Price and stock drift between surfaces
The sale ended Sunday. Your storefront knows. The Google feed someone re-uploaded on Thursday does not, and the CSV a developer sent a partner last month is further behind. An agent that quotes a wrong price loses the sale and the shopper's trust together.
One source, every surface, on a schedule
Store Sync writes the record to every connected Shopify store, so what Shopify Catalog hands ChatGPT is the same complete data. The agent-ready feed regenerates on its own cadence from the live catalog; nobody re-uploads anything (Advanced and Enterprise plans).
A Google Shopping feed is not an agent feed
Reusing the Merchant Center XML looks like a shortcut. It carries Google-specific fields, titles cut to Google's limit and only the attributes Google asked for. And if wholesale price ever lived as an ordinary field, a public agent feed is one more place for it to surface.
A feed shaped for LLMs, plus a live MCP endpoint
The agent-ready feed drops channel cruft and carries complete attributes, resolved categories and plain-language text at a hosted URL. For agents that would rather ask than parse, @apimio/mcp exposes 47 tools over the same catalog. Wholesale fields are structurally excluded from both.
What an agent-ready catalog needs
Seven things, in the order an assistant trips over them. The first five are data problems; the last two are delivery problems. Apimio treats them as one job.
Complete attributes
Material, dimensions, weight, finish, care, warranty, compatible parts: whatever your category rules say a sellable product needs. An assistant filters on attributes before it ranks, so every empty field is a lost match, not a lower rank.
- Category-specific required fields
- Multi-value fields stay structured
- Publish Gate holds incomplete products as drafts
GTIN and identifiers
OpenAI lists gtin as optional (8 to 14 digits) and brand as required; a GTIN is also how any assistant recognizes your product as the same item elsewhere. Apimio stores GTIN, MPN and brand per variant and flags GTIN presence before publish.
- GTIN, MPN, brand per variant
- GTIN presence checked before publish
- Identity matching prevents duplicates across stores
Resolved categories
Free-text categories fail Meta and Pinterest validation and tell a language model little. Product Feeds maps your categories to Google's product taxonomy once; the agent-ready feed carries the full resolved path.
- Merchant category to Google taxonomy map
- ">" separated path, the form OpenAI's product_category uses too
- Mapped once, reused by every feed
Plain-language descriptions
Facts first, no HTML, inside OpenAI's 5,000 plain-text character limit. Apimio AI drafts them from the record's attributes; you review before anything saves.
- Plain text, no storefront HTML
- Drafted from attributes, previewed, opt-in
- Meta titles and alt text from the same record
Consistent availability and price
One price with a currency code and one availability value per variant, identical on every surface. Feed diagnostics check availability vocabulary and price/currency mismatches; Sale Scheduler starts and ends promotions on time.
- Price with ISO currency code
- Availability vocabulary checked per channel
- Sale Scheduler for time-boxed prices
A hosted URL that stays current
Generated by the same engine as your Google and Meta feeds and served at a stable, tenant-scoped URL that refreshes on schedule. Up to 25 feeds per organization, each with its own product selection (Advanced and Enterprise plans).
- Stable hosted URL, scheduled refresh
- Own product selection and cadence per feed
- Pauses, never deletes, if a subscription lapses
An MCP endpoint for live queries
For agents that need the answer now rather than last night's file: one npx line connects Claude or any MCP client to the catalog with 47 tools generated live from the OpenAPI spec (Advanced and Enterprise plans).
- @apimio/mcp on npm
- 47 tools that track the API automatically
- Scoped keys, 250k or 1M calls per month by plan
Five steps from a scored catalog to a feed an assistant can read
Most teams finish steps one and two in their first week. Steps three to five are configuration, then the feed looks after itself.
Score the catalog with Quality Guard
Install Apimio from the Shopify App Store or start a trial; the catalog syncs in and Quality Guard scores every listing against your category rules. The fix list is your agent-readiness gap, product by product.
Fix the gaps
Fill missing attributes in Bulk Edit, pull specifications from supplier files through Supplier Bridge, and let Apimio AI draft plain-language descriptions for you to review. Publish Gate holds anything still incomplete as a draft.
Build the agent-ready feed
In Product Feeds, choose the agent-ready template, pick the product selection, confirm the category map and set the refresh cadence. The feed is generated and hosted at a stable URL (Advanced and Enterprise plans).
Hand over the URL, or connect via MCP
Give the hosted URL to the assistant, partner or internal agent that will consume it. If you are onboarded with OpenAI's merchant program, map the columns to their field names and deliver on their schedule. For live queries, run npx @apimio/mcp.
Keep it current automatically
The feed regenerates on schedule from the live catalog, and Store Sync keeps every Shopify store, and so Shopify Catalog, on the same data. A price change lands everywhere at the next refresh.
Agent-ready feed vs a reused Google Shopping feed vs a manual export
Reusing the Merchant Center feed is the honest default most teams start with, and it is better than nothing. The table shows where it stops.
| Scored data, hosted URL Apimio agent-ready feed | Google Shopping feed reused as-is | Manual export | |
|---|---|---|---|
| Attributes beyond the channel's required list | |||
| Categories resolved to a full path | |||
| Plain-text descriptions within LLM limits | |||
| GTIN, brand and MPN present and checked | |||
| Price with currency and availability vocabulary validated | |||
| Hosted URL that refreshes on schedule | |||
| Live queries for agents (MCP) | |||
| Wholesale fields structurally excluded | |||
| Cost | Included in Advanced ($399/mo) and Enterprise | Free with Shopify's Google channel, or a feed app | Developer time, every time |
What a complete, machine-readable catalog does for you
The same six things whether the reader is ChatGPT, a dealer's procurement agent, or a script your agency wrote.
You make the shortlist
Assistants filter on attributes. When yours are present and machine-readable, you are a candidate instead of a gap in the results, and the shopper never knows how many brands were silently dropped.
One fix, every surface
Fill a field once on the canonical record and it reaches every Shopify store, every channel feed and the agent-ready feed. No per-channel patching, no second copy to forget.
Prices an agent can quote
Price with currency and availability come from the live catalog on a schedule. Sale Scheduler starts and ends promotions on time, so the price an assistant repeats is the price at checkout.
Trade pricing stays private
Wholesale price, MOQ and case pack are excluded from every feed by architecture. Opening your catalog to AI assistants does not mean opening your dealer terms to the public.
Nobody babysits the file
The feed regenerates on schedule from the live catalog. A stale agent feed stops being possible because there is no export ritual left to forget.
Developers and agents use the same door
The REST API, signed webhooks and the MCP server read the catalog the feed is built from. An agency script and a shopping agent see identical data, and every write is audited.
The pieces this page depends on
The agent-ready feed is one template on the Product Feeds engine, built from data Quality Guard already scored, over a catalog the API and MCP server also read.
Developer Portal
REST API v1, HMAC-signed webhooks, OpenAPI 3.1 reference, llms.txt and the @apimio/mcp quickstart.
Explore the Developer PortalProduct Feeds
Hosted Google, Meta, Pinterest, TikTok and Bing feeds, Amazon and Walmart files, and the agent-ready template, from one catalog.
See Product FeedsProduct feed management
How to run every channel feed from one source of truth, what causes disapprovals, and how to fix data before it ships.
Read the guideQuality Guard
Every listing scored against your category rules; Publish Gate holds incomplete products as drafts until they are ready.
See Quality GuardApimio for Shopify catalogs
One place for your product data: the canonical record every store, feed and agent reads from.
See the Shopify-native platformMulti-store Shopify
Run two or more Shopify stores as one catalog, so Shopify Catalog forwards the same complete data from every store.
See the multi-store solutionQuestions merchants ask about ChatGPT, AI agents and product data
Every OpenAI and Shopify fact below was checked against their published documentation on 2026-08-27. Their programs change; check the dates.
A ChatGPT product feed is a structured file of your products that OpenAI processes so ChatGPT can show them in shopping answers and, for approved merchants, complete the purchase in chat. As of 2026-08-27, OpenAI's spec requires ten fields per row (item_id, title, description, url, brand, image_url, price, availability, is_eligible_search, is_eligible_checkout), accepts tab- or comma-delimited UTF-8 files, and asks for a full snapshot at least daily. Apimio produces that data from one scored catalog and serves it as a hosted agent-ready feed you can map to OpenAI's field names.
Two routes as of 2026-08-27. If your Shopify store sells to US customers, Shopify Catalog already makes eligible products discoverable in ChatGPT by default, managed under Sales channels > Agentic > ChatGPT. Otherwise, OpenAI's merchant program is open to approved partners: apply at chatgpt.com/merchants, then deliver a feed matching their spec over SFTP on a daily cadence. Either way ChatGPT only shows what your data supports, so the real work is making every product complete. Apimio does that upstream and keeps the result current on every store and feed.
Yes. OpenAI publishes it at developers.openai.com under Agentic Commerce. As of 2026-08-27 it lists ten required fields, optional identifiers such as gtin (8 to 14 digits) and mpn, a product_category path with a ">" separator, availability values in_stock, out_of_stock, pre_order, backorder and unknown, price with an ISO 4217 currency code, a 150-character title and a 5,000-character plain-text description. Apimio's agent-ready feed is not the OpenAI spec, but it carries the same kinds of complete plain-text data, so mapping columns to their names is a small exercise.
For most US-facing stores, yes, already. Shopify announced on 2026-03-24 that products become discoverable in ChatGPT by default through Agentic Storefronts, with no separate app, and its Help Center confirms the channel is active by default for eligible stores that sell to US customers with policies completed. Checkout happens on your own storefront in a ChatGPT in-app browser or new tab. What ChatGPT reads is the data in Shopify Catalog, so an incomplete Shopify record is an incomplete ChatGPT listing. Apimio fixes the record once and syncs it to every connected store.
An agent-ready product catalog is product data an AI agent can query and trust without a human interpreting it: every attribute a category needs is present, GTIN and brand are filled, categories resolve to a recognized path rather than free text, descriptions are factual plain text, price carries a currency, availability uses a controlled vocabulary, and it is reachable at a stable URL or through an API rather than an emailed spreadsheet. Apimio builds this from Catalog Hub records Quality Guard has scored, serves it as a hosted feed, and exposes the same catalog through @apimio/mcp.
MCP (Model Context Protocol) is the open protocol AI clients such as Claude use to reach external tools and data. An MCP server for ecommerce exposes a store's catalog as tools an agent can call: search products, read a variant's attributes, check inventory, update a field. Apimio publishes @apimio/mcp on npm; one npx line connects any MCP client to a merchant's catalog with 47 tools generated live from the OpenAPI spec, under scoped API keys (Advanced and Enterprise plans). It is the live-query counterpart to the agent-ready feed.
You can, and it beats nothing, but it stops short. A Merchant Center feed carries Google's required fields plus Google-specific extras, titles cut to Google's limit, descriptions that were storefront HTML, and only the attributes Google asked for. Assistants filter on attributes Google never needed, such as seat count or fabric composition. Apimio generates the Google feed and the agent-ready feed from the same scored record, so the agent version has the full attribute set in plain text while the Google version keeps Google's shape.
As often as prices and stock change, and at least daily. OpenAI's guidance as of 2026-08-27 asks for full snapshots on a predictable cadence, at least daily, overwriting the same stable filename, and Shopify notes that AI surfaces favor real-time accuracy. In Apimio the agent-ready feed regenerates on the schedule you set from the live catalog, so a price change or Sale Scheduler promotion is in the feed at the next refresh (Advanced and Enterprise plans). For anything an agent must know this second, the MCP server answers from the live record.
Maybe not. A single Shopify store with a few hundred SKUs, complete listings and US customers is already discoverable through Shopify Catalog, and tidy product data in Shopify admin may be all you need. Apimio earns its place when the data is not complete, when it lives across two or more stores that disagree, when suppliers keep sending new specifications, when you sell outside the US or to dealers who run their own agents, or when a developer wants to query the catalog rather than scrape it. If none of those apply, fix your Shopify listings and skip the subscription.
Product Feeds, including the agent-ready template, the REST API and the @apimio/mcp server are on the Advanced plan at $399 per month and the Enterprise plan from $999 per month. The Basic plan at $199 per month covers one store and 10,000 SKUs with Catalog Hub and Quality Guard but not feeds or API access. Every plan starts with a 14-day free trial, and Apimio pauses rather than deletes feeds if a subscription lapses. Full details are at apimio.com/pricing.
Make your catalog readable by the assistants your customers already use
Start a 14-day free trial, let Quality Guard score the catalog, and see your agent-readiness gap product by product. Feeds, API and MCP are on the Advanced and Enterprise plans.