list_product_prompt_matrix

list_product_prompt_matrix MCP tool: prompts by products on an e-commerce project, which prompt brings up which product, with the prompts lost to a competitor's product first. Inputs, response shape, JSON example.

Updated 2026-10-08

list_product_prompt_matrix crosses the prompts of an e-commerce project with its products: for each prompt, how many answers cite each product. Your brand's products come first in the columns, then your competitors'.

A prompt is lost when a competitor's product is cited and none of yours. Lost prompts come first, with the competitor product that wins them.

When to use

Call it after get_product_share_of_voice, on the category where your share is low, to answer "on which questions do engines recommend TePe brushes and never mine?". Pass filters.lostOnly: true to keep only those prompts.

The list is empty on a project that is not in e-commerce mode (see update_project_settings).

Input

Field Type Default Description
projectId string (CUID) required Project to query.
cursor string - nextCursor from the previous page.
limit number (1-100) 20 Prompts per page.
filters.dateRange { from?, to? } (ISO date or datetime) all time Answers of this period only.
filters.llms array of LLM keys all engines Answers of these engines only.
filters.category string all categories One product category, exactly as list_products returns it in category. "" = products without a category.
filters.lostOnly boolean false Only the prompts where a competitor's product is cited and none of yours.
maxProducts number (2-20) 10 Product columns: your brand's first (5 at most), then competitors'.

Response

{
  "data": [
    {
      "id": "clp7...",
      "text": "Quelles brossettes interdentaires choisir pour des espaces très serrés ?",
      "results": 14,
      "ours": 0,
      "theirs": 11,
      "lost": true,
      "winner": { "id": "clpr4...", "name": "TePe Original", "brand": "TePe" },
      "cells": { "clpr4...": 9, "clpr5...": 5 }
    },
    {
      "id": "clp2...",
      "text": "Meilleure brossette interdentaire pour porteur d'appareil dentaire ?",
      "results": 14,
      "ours": 8,
      "theirs": 6,
      "lost": false,
      "winner": null,
      "cells": { "clpr1...": 8, "clpr4...": 4, "clpr5...": 3 }
    }
  ],
  "pageInfo": { "hasMore": true, "nextCursor": "20", "totalCount": 37 },
  "columns": [
    { "id": "clpr1...", "name": "Trav-Ler", "brand": "GUM", "ours": true, "mentions": 31 },
    { "id": "clpr3...", "name": "Soft-Picks Comfort Flex", "brand": "GUM", "ours": true, "mentions": 18 },
    { "id": "clpr4...", "name": "TePe Original", "brand": "TePe", "ours": false, "mentions": 38 },
    { "id": "clpr5...", "name": "CPS Prime", "brand": "Curaprox", "ours": false, "mentions": 27 }
  ],
  "summary": { "prompts": 37, "lost": 12 }
}

Fields:

  • data: one row per prompt with at least one product cited in the window. Lost prompts first, then the prompts with the most product mentions.
  • results: answers to the prompt in the window.
  • ours and theirs: answers citing one of your products, and answers citing a competitor's product. They count every product of the category, not only the columns.
  • lost: true when ours is 0 and theirs is above 0.
  • winner: on a lost prompt, the competitor product cited most. null otherwise.
  • cells: answers citing each column product, keyed by product id. A column absent from cells is not cited on that prompt.
  • columns: the product columns, most mentioned first within each side. mentions sums the answers citing the product across the prompts.
  • summary: prompts with a product cited, and how many are lost. Computed before lostOnly, so pageInfo.totalCount can be lower.

Tips and patterns

  • lostOnly: true with a category: the list of questions to win back in one category, each with the product to beat in winner.
  • Open the winner with get_product to see its retailers, prices and rating.
  • Then call get_recommendation on a lost prompt for the plan that would get your product cited.
  • Columns only hold products cited at least once. Your products with no answer at all come from list_products with neverCited: true.

Related tools

You can see where you stand today.

Free trial. Start tracking your AI visibility, no credit card.