Use case4 min read2026-07-30

Watch your e-commerce AI shelf

Retail taught everyone the vocabulary: shelf space, facings, planogram. AI answers have quietly rebuilt the shelf — when a shopper asks "best running shoes for flat feet", the answer stocks three to five products, and everything else in the category might as well be in the stockroom. Unlike a store, nobody sends you the planogram. The AI shelf is checkable, though: fetch the answers for your buying queries and read which products they stock. AgentGEO returns those answers as structured records across six engines, so a merchandising team can watch its shelf the way it watches Amazon rank — as a dated feed, not an anecdote.

Read this page with an AI

The job: for each buying query that matters to your catalog, know which products the engines put on the shelf, whether yours are among them, and which retailer or review site the answer cites as the place to buy — because that citation is who gets the click.

How AI-shelf tracking works

  1. Build query sets per category, not per SKU. Shoppers ask in category language — "best espresso machine under $300", "gifts for runners". Map each set to the products you'd want stocked in that answer.
  2. Fetch across shopper engines. POST /v1/fetches with the buying query; surfaces covers ChatGPT, Gemini, Google AI Overviews, Google AI Mode, Copilot and Perplexity in one contract. Add country on the surfaces that read it — shelves differ by market.
  3. Score products and sellers separately. Product names against answerText; your store's domain against sources[].url. Being stocked but not cited means the engine sends buyers to someone else's listing of your product.
ai_shelf.py — who's stocked, who gets the click
import requests

OUR_PRODUCTS = ["AeroGlide 3", "AeroGlide Trail"]
OUR_STORE = "aeroglide.com"

resp = requests.post(
    "https://api.agentgeo.org/v1/fetches",
    json={"query": "best running shoes for flat feet", "surfaces": ["chatgpt", "gemini"]},
    headers={"Authorization": "Bearer ag_live_your_key_here"},
    timeout=200,
)
resp.raise_for_status()

for answer in resp.json()["answers"]:
    text = (answer.get("answerText") or "").lower()
    stocked = [p for p in OUR_PRODUCTS if p.lower() in text]
    sellers = {s["url"].split("/")[2] for s in answer.get("sources") or []}
    print(answer["surfaceKey"])
    print(f"  stocked: {stocked or 'none of ours'}")
    print(f"  cited sellers/reviewers: {sorted(sellers) or 'none'}")
    print(f"  our store cited: {any(OUR_STORE in s for s in sellers)}")
Shelf outcomeWhat it meansThe merchandising move
Stocked and your store citedYou own the shelf and the click.Protect it — keep the cited page in stock, priced, reviewed.
Stocked, retailer citedYour product sells; the margin goes through their listing.Build the comparison/guide page the engines can cite you for.
Not stocked, category owned by rivalsThe answer's roster excludes you.Check which review sites the engines cite for the category — that's the shelf-placement pitch list.

The cited hosts are the modern trade publication list. If every espresso-machine answer cites the same two review sites, placement in those two reviews is worth more than any on-site tweak — and the records just told you exactly where to pitch.

Let your agent run it

Over MCP, the geo-visibility and geo-monitor skills in agentgeo-mcp run shelf checks on a saved query set and diff runs — "which category answers dropped AeroGlide since last month?" is a one-line question once the records accumulate.

One line to install
claude mcp add agentgeo -- npx -y agentgeo-mcp --key ag_live_...

Alternatives

Digital-shelf platforms (Profitero-class) watch retailer sites — stock, price, search rank inside Amazon or Walmart — and stop at the AI answer layer above them. GEO dashboards watch brands generically without the product/seller split an e-commerce team needs. The raw-records route lets you model the shelf your way and join it to the sales data you already have. The build-vs-buy ledger covers scraping it yourself.

More use cases

The general form of this job is product recommendation tracking; the Google-specific surface has its own discipline in AI Overviews monitoring — see all use cases.

See which answers stock your products today: Get a free AI-visibility audit →

Get my free audit

FAQ

Direct answers to the questions this page raises.

Both, as separate columns. Product mentions tell you whether you're stocked; cited hosts tell you who gets the buyer. Many brands find their products stocked in answers that cite only marketplace listings — good for units, invisible for margin and first-party data.

Whatever strings you test against answerText — brand, product line or exact model name. In practice engines talk in product-line language ("AeroGlide 3") rather than SKU codes, so track the names shoppers would repeat.

Weekly for evergreen categories, daily around launches and seasonal peaks — a schedule per query set keeps the cadence honest. Since a delivered record is one credit, a 50-query, 3-engine daily check is a known 150 credits a day; scope the set to queries that move revenue.

No — every plan is paid, and a workspace fetches nothing live until it has one. What costs nothing: the human-run audit, and ag_test_ keys, which return labelled demo records at zero credits.

Keep reading

Where this page leads next.

Run these checks on your own brand

Two ways in. Send a URL and a person runs the fetches for you, free — or connect your agent over MCP, on a plan, and run them yourself. Either way you get the raw answers and their citations, never a score.