DocsUse cases

For content & SEO teams

Run the full generative-engine-optimization loop — find the questions AI assistants answer, draft against your own facts, publish, and track whether the page earns citations — with source intelligence, crawler analytics, and an llms.txt generator.

Classic SEO optimizes a page to rank. Generative-engine optimization asks a harder question: when an AI assistant answers on your topic, does it read your page, name your brand, and cite your URL — or a competitor's? MentionFlow closes that loop for content teams. You find the questions assistants actually answer, draft against your own verified facts, publish, and then watch whether the page goes on to earn citations in real AI answers. Every step is grounded in observed behavior, so you're optimizing against what engines do, not what a blog post guesses they do.

This guide runs the loop: research → draft → publish → track, plus the source, crawler, and llms.txt tooling around it.

Find the questions worth answering

Two surfaces turn real demand into a prompt list you can build content against:

  • Research shapes real search-demand data plus a language model into around 32 candidate prompts (at least 80% unbranded, clustered), and carries a Google Search Console striking-distance block — queries you already rank 8–20 for with real impressions, the near-misses a good page can convert.
  • Fan-outs are the actual web searches an assistant ran while answering your prompts, lifted verbatim from the stored payload — never simulated. Today that field is emitted by ChatGPT and Perplexity; each query is one click from becoming a tracked prompt.

Both feed the suggestion queue, so your editorial calendar grows from observed demand.

See where your content already covers — and doesn't

The Content surface opens with a coverage map: which tracked prompts your published site actually addresses, and which it doesn't.

The Content agent in demo mode: coverage, gaps-found, pieces-created and citations-won tiles, a coverage bar, the research-steps panel, and the coverage-map table.

Coverage is covered ÷ prompts with at least three runs — a low-sample prompt reads "too few runs to call" and stays out of the denominator, so coverage is never computed on a sample too thin to trust. Under the hood it picks the single nearest embedded page per prompt and buckets the similarity (excellent ≥ 0.50, good ≥ 0.42, medium ≥ 0.34), so a "gap" is a real content hole, not a guess.

Draft against your own facts

The content agent generates briefs and full drafts grounded in your brand knowledge base — a structured fact sheet plus a longer-document library that's chunked, embedded, and retrieved (top 5 by similarity) at draft time. It never invents facts and never contradicts your "never claim" list.

  • The draft's research phase can also pull Google top results, news coverage, and YouTube transcript excerpts. Each step enables itself only when its server key is set — a keyless step reads "Needs a key" and never runs silently — and the piece page lists exactly which inputs grounded each draft (a count of 0 means the step ran and found nothing).
  • A draft is editable in place; saving marks it "Edited by hand" and nothing regenerates over your words without an explicit action.
  • Draft generation is metered per UTC calendar month across the workspace and the meter is checked before the paid model call; briefs are available on every plan. See Plans and quotas.
Tip

Briefs also launch straight from an Actions card or a Competitors gap, so a measured miss becomes a grounded content brief without leaving the loop.

Publish, then track the payoff

Taking a piece Live requires a published path — that URL is the join key MentionFlow uses to follow the piece. From then on, citations-won counts only live pieces, and the daily trail is recorded by the collection cycle and outlives the dashboard window: the piece page charts every calendar day since tracking began, where a day the cycle didn't run is a gap, not a zero (a stored 0 always means runs happened and the path went uncited). That distinction is the whole point — it tells the difference between "we didn't measure" and "we measured and it wasn't cited".

For any URL — yours or a competitor's — the Page tracker at /pages is a lens over the citations you already collect: which engines cite the page, for which prompts, and how often, with a daily trail. It does no crawling; it reads stored citations. Connect Google Search Console and it shows your real Google impressions and clicks next to each page's AI citations.

Know which sources shape the answers

Sources is the citation layer: every domain and community thread engines cite when answering your prompts, classified (owned, competitor, editorial, UGC, reference, social) from curated root-domain lists — not a language model — and flagged for where you appear and where there's an opportunity. The owned and competitor classes are re-derived at read time from your current brand config, so fixing your domains re-labels sources immediately. The community view is tri-state about your presence in a thread — Yes, "No — join this conversation", or "not checked yet" — so a null never fakes a No. This is your PR and digital-relations target list: the sites and conversations you need to be in to change the answer. Citation share is the metric behind it.

Make sure the crawlers can read you

None of this works if AI crawlers can't fetch your pages. Crawlers (a Growth-plan feature; demo stays open) connects your server logs to your results — which agents (GPTBot, ClaudeBot, PerplexityBot, and others) fetch your site, for what purpose (training, search_index, user_fetch), and whether a crawled page went on to be cited.

The per-agent robots.txt verdict is the one to watch, and it's honest about its own certainty:

VerdictWhat it means
AllowedA rule names the agent and permits your key pages.
BlockedA Disallow blocks it. For a training crawler that only opts you out of model training; for a search-index or live-fetch crawler it removes you from the answers that agent feeds.
Not addressedNo rule names the agent; it falls through to your * defaults.
Couldn't checkrobots.txt couldn't be fetched (DNS, timeout, 5xx). The verdict is unknown, not a green light — MentionFlow retries on the next view.

Getting logs in takes a one-click Cloudflare Worker, a log upload, or a REST feed — and only recognized AI agents and paths are stored, never query strings.

Ship an llms.txt

Give assistants a clean, machine-readable summary of your site with the free llms.txt generator — the same builder that produces MentionFlow's own /llms.txt. Fill in your name, a one-line summary, and your key pages, and copy the file to your site root. It's a small, standards-aligned way to tell an AI assistant what you do and what to recommend you for.

The loop, in one line

Research the questions, read your coverage, draft against your own facts, publish with a tracked path, and watch citations-won climb — while Sources tells you which domains to earn, Crawlers confirms the bots can read you, and the Page tracker proves whether a specific URL is winning the citation. Every number traces back to a receipt you can open and read.