Vantage: the AI visibility MCP server
Find out whether ChatGPT, Gemini and Perplexity cite your site, and what to change if they don't.
Vantage is an MCP server. Your coding agent (Claude Code, Cursor, VS Code, or any MCP client) asks it which questions already cite your domain, who is cited instead, how the winning answer is built, and how your page differs. No dashboard to read: the answer comes back where you are working.
Add to Cursor · Add to VS Code · Try one check with no account
Claude Code:
claude mcp add --transport http vantage https://vantagemcp.dev/mcp
Free tier: 30 units a month, no card. Sign in with your email the first time a tool runs.
https://github.com/user-attachments/assets/38df5876-16ac-403d-b39f-170a2458cfb1
A real check on vantagemcp.dev, 50 seconds, not sped up. Answers vary run to run: this keyword was cited in 0 of 3 answers earlier today (see the output below) and in 1 of 3 here, which is why Vantage reports cited_runs.
What a real check looks like
We ran Vantage on its own domain on 19 October 2026: five questions people ask when they look for a tool like this, three ChatGPT answers per question. Output trimmed to fit; the values are as returned.
> Is vantagemcp.dev cited by ChatGPT for these five questions? Read three answers each.
< analyze_citation_coverage(
domain: "vantagemcp.dev",
keywords: ["ai visibility mcp server", "check if chatgpt cites my website",
"llm citation tracking tool", "ai search visibility tool", "mcp server for seo"],
brand: "Vantage", samples: 3)
{
"keywords_checked": 5,
"keywords_cited": 0,
"coverage_pct": 0.0,
"results": [
{
"keyword": "ai visibility mcp server",
"cited": false, "cited_runs": 0, "samples_ok": 3,
"source_frequency": [
{ "domain": "github.com", "runs": 2 },
{ "domain": "www.npmjs.com", "runs": 2 },
{ "domain": "seekinweb.com", "runs": 1 }
],
"previous": { "checked_at": "2026-10-01", "cited_runs": 0 },
"change": "same"
},
{
"keyword": "llm citation tracking tool",
"cited": false, "cited_runs": 0, "samples_ok": 3,
"source_frequency": [
{ "domain": "www.tryprofound.com", "runs": 3 },
{ "domain": "otterly.ai", "runs": 3 },
{ "domain": "ahrefs.com", "runs": 3 }
],
"change": "first_check"
}
]
}
Not cited for any of the five, and that is the point of checking. Each result is remembered for 180 days, so
the next run reports change and newly_cited instead of starting from nothing. From there the agent can call
analyze_citation_gap on a page and get an ordered fix brief.
Tools
Ten tools. Units are what a call costs against your monthly quota (Free: 30, Pro: 500, Scale: 1,500).
| Tool | Answers | Units |
|---|---|---|
get_supported_options | Which engines, platforms and markets each tool accepts, and the per-call limits | 0 |
get_usage | How much of this month's quota is left | 0 |
get_check_history | Your earlier coverage results for a domain, newest first | 0 |
find_cited_questions | Which questions already cite your domain, most asked first | 10 |
analyze_citation_coverage | Which of up to 10 keywords cite a domain, and which do not | 1 per keyword per sample |
analyze_citation_gap | How your page differs from the answer that is cited, plus a fix brief | 1 |
analyze_citation_structure | How the winning answer for a topic is built | 1 per sample |
analyze_citation_structure_batch | The same, across up to 10 related topics | 1 per keyword |
find_citation_leaders | Who dominates AI citations for a topic | 10 |
analyze_citation_trend | Month-by-month citation counts for a domain | 1 per domain |
Install
Claude Code, Cursor, VS Code: use the buttons or the command at the top. All three sign in to Vantage in your browser on first use.
Any client that supports MCP sign-in (OAuth): add https://vantagemcp.dev/mcp with no key and sign in with
an email (a free account) or an existing key.
Any other client: add to its MCP config:
{
"mcpServers": {
"vantage": {
"url": "https://vantagemcp.dev/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
A client that only starts local commands: use the npm package
vantage-ai-visibility-mcp, which connects to the
same hosted server:
{
"mcpServers": {
"vantage": {
"command": "npx",
"args": ["-y", "vantage-ai-visibility-mcp"],
"env": { "VANTAGE_API_KEY": "YOUR_API_KEY" }
}
}
}
Get a free API key at vantagemcp.dev. To try before installing, vantagemcp.dev/check runs a real check with no account, no email and no card: give it a keyword and it returns the measured shape of the answer ChatGPT cites for it.
Published on the Official MCP Registry under the
domain-verified namespace dev.vantagemcp/vantage.
Tools in detail
get_supported_options
Which engines, platforms and markets each tool accepts, and the per-call limits. Costs 0 units; a fixed list.
"Which markets can I check?"
get_usage
How much of this billing period's quota is left, before spending any of it. Costs 0 units: reads Vantage's own record, never calls the paid data provider.
"How many checks do I have left?"
find_cited_questions
Starts from your domain instead of a keyword: the questions where AI answers already cite it, most asked first. 10 units.
"What does ChatGPT already cite us for?"
analyze_citation_coverage
Which of several prompts actually cite a specific domain, and which don't, up to 10 keywords in one call. ChatGPT, Gemini or Perplexity (engine), 1 unit per keyword per sample. Pass samples=3 to get "cited in 2 of 3 answers" instead of one yes or no. Each result is remembered for 180 days, so the next check reports what changed (previous, change, newly_cited).
Cited and named are reported separately. An answer can name your brand without linking you (mentioned_not_cited: the model already knows you, it just isn't citing you) or link a page it never names. Pass brand (e.g. "Notion") so the name check looks for your real brand instead of a guess from the domain.
"Out of everything we care about, where do we already show up?"
get_check_history
Your earlier analyze_citation_coverage results for a domain, newest first. 0 units.
"Did our changes last week move anything?"
find_citation_leaders
Who dominates AI-answer citations for a topic, and whether a domain is among them.
"Who's winning AI search for this?"
analyze_citation_trend
Month-by-month mention counts for a domain, so you can see whether visibility is growing or fading.
"Is our AI visibility improving?"
analyze_citation_structure
How the winning AI answer for a topic is actually shaped: list-led, sources cited, opening length.
"What does a winning answer look like?"
analyze_citation_structure_batch
Same as analyze_citation_structure, across up to 10 related topics in one call, for content planning across a cluster.
"What do winning answers look like across this whole topic cluster?"
analyze_citation_gap
Diffs your own page's structure against the winning AI-cited answer for the same keyword and returns a fix_brief: ordered rewrite instructions your agent can carry out on the page (opening, sections, the answer's points your page does not cover, table, sources), ending with one step beyond the page: which community sites or other websites the answer relies on. The brief never contains the cited answer's text.
"What should I actually change on this page to get cited?"
Source mix
Every tool that returns cited domains also returns source_mix: how much of them are community sites (Reddit, YouTube, X, Quora and similar) and which. A high share means the topic is won by what people say about a brand elsewhere, not by any one site's pages.
Country and language
Every tool except get_usage takes optional country (e.g. "Italy") and language (e.g. "it"), default United States / en. Tools that read a live ChatGPT answer work in any supported market; find_citation_leaders and analyze_citation_trend only have ChatGPT data for the United States in English, so use platform: "google" for other countries.
What it can and cannot tell you
- Answers change from run to run. One answer is a sample, not a verdict. Use
samples=3before telling anyone they are or are not cited. - Cited is not the same as named. Vantage reports a link to your domain and a mention of your brand separately, and never merges them.
- It reads what a person would see. ChatGPT and Gemini results are the answers a person sees in those apps,
fetched through DataForSEO; Perplexity results come from its search API. It cannot see private conversations,
and a result is the answer at the time of the check (
modelandchecked_atare on every result). - A fix brief is a hypothesis. It shows how your page differs structurally from the answer that is cited. Page shape gets a page into the running; being cited is decided mostly by what other sites say about the brand, which is why every brief ends with an off-site step.
Agent skill
vantage-citation-audit teaches your agent the whole loop:
measure which keywords cite you, diagnose one page, apply the fix brief, re-check. It only describes the workflow;
every check is a Vantage tool call.
Monthly research
Every month Vantage asks ChatGPT, Gemini and Perplexity the same everyday questions and publishes which sites they cite, by engine and topic, with the raw data: vantagemcp.dev/research. Free to quote.
Running your own instance
This repo is the MCP server itself: API-key auth, usage metering, one tool per read (see Tools above). Billing and account provisioning are a separate internal service, not included here.
uv pip install -e .
export DATAFORSEO_USERNAME=...
export DATAFORSEO_PASSWORD=...
# stdio (local MCP client, e.g. Claude Desktop config pointing at this command)
python -m vantage_mcp.server
# streamable-http (network service, bind to loopback behind your own reverse proxy)
export VANTAGE_PORT=8420
python -m vantage_mcp.server --http
Requires a DataForSEO account for the underlying SERP/AI-answer data.
Not to be confused with: vantage.sh, a cloud cost-management company with its own, unrelated MCP server also named Vantage. Different product, same name.
Star it
Useful? A star on GitHub helps others find it. Already starred? Tell us what brought you here: [email protected].
License
MIT