list_competitor_sources

list_competitor_sources MCP tool: for one competitor, the domains where LLMs cite them, with mention counts, top URLs and sample context. Built for outreach lists.

Updated 2026-04-26

list_competitor_sources

list_competitor_sources lists, for a single competitor, the domains where they get cited by LLMs answering your tracked prompts. Each row carries mention counts, the LLMs involved, the prompts that triggered the citation, top URLs and a sample context snippet.

When to use

Use it when the user wants to "build an outreach list of every site that mentions [competitor]", "find guest post targets where my competitor is winning", or "discover the long tail of citation sources behind a competitor's brand presence". This is the natural follow-up tool after list_competitors: pick a competitor with high totalMentions, then explore the sources feeding that visibility.

Input

Field Type Default Description
projectId string (CUID) required Project to query.
competitorId string (CUID) required Competitor to inspect.
cursor string Source ID cursor.
limit integer 20 1 to 100.
filters.minMentions integer 1 Minimum mentions per source.
filters.domainContains string Case-insensitive domain substring.
sortBy enum mentions_desc mentions_desc or recent.

Response

data is one row per domain. topUrls shows the URLs driving the bulk of the mentions on that domain, and sampleContext is a short snippet pulled from a real LLM answer for color.

{
  "data": [
    {
      "sourceId": "clxsrc098",
      "id": "clxsrc098",
      "domain": "techcrunch.com",
      "mentions": 14,
      "llms": ["CHATGPT", "GEMINI"],
      "promptIds": ["clxprompt001", "clxprompt007"],
      "topUrls": [
        {
          "url": "https://techcrunch.com/2026/03/14/otterly-funding",
          "mentions": 9
        }
      ],
      "sampleContext": "Otterly raised $2M to track LLM citations.",
      "firstSeen": "2026-03-14T00:00:00.000Z",
      "lastSeen": "2026-04-22T00:00:00.000Z"
    }
  ],
  "pageInfo": { "hasMore": true, "nextCursor": "clxsrc098", "totalCount": 28 },
  "summary": {
    "competitor": { "id": "clxcomp001", "name": "Otterly" },
    "totalSources": 28,
    "totalMentions": 89
  }
}

Tips and patterns

  • Sort by mentions_desc to find the highest-leverage outreach targets first.
  • Use filters.minMentions to drop one-off mentions and focus on recurring publishers.
  • Cross-reference each domain with list_llm_sources for your own brand to see whether you are also cited there. Domains where the competitor wins and you do not exist are top outreach picks.
  • sampleContext is verbatim from an LLM response. It often hints at the angle the LLM prefers.

Related tools