Vantage
Know if AI actually cites you.
Vantage is an MCP server that checks whether ChatGPT, Gemini, Perplexity and Google's AI Overview cite your brand, for which questions, and whether that is changing, callable directly from Claude Code, Cursor, or any MCP client. No dashboard to interpret, just a straight answer.
Try it without installing anything
vantagemcp.dev/check runs a real citation check with no account, no email and no card. Give it a keyword and it returns the measured shape of the answer ChatGPT actually cites for it: whether the answer opens with a list, how long the opening is, how many sources it cites, and which domains those are.
Every answer keeps a permanent page, and they are all listed in check/sitemap.xml.
Published on the Official MCP Registry under the domain-verified namespace dev.vantagemcp/vantage.
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.
Install
If your client supports MCP sign-in (OAuth), add https://vantagemcp.dev/mcp with no key and sign in: a free account from your email, or an existing key. Otherwise add to your MCP client config:
{
"mcpServers": {
"vantage": {
"url": "https://vantagemcp.dev/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Try it first with no account at all at vantagemcp.dev/check, or get a free API key (30 quota units a month, no card required) at vantagemcp.dev.
Tools
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?"
check_prompt_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 check_prompt_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.
Example
> agent calls find_citation_leaders(
keyword: "best mood tracker app",
platform: "chat_gpt"
)
< response
{
"keyword": "best mood tracker app",
"platform": "chat_gpt",
"top_domains": [
{ "domain": "www.reddit.com", "mentions": 59 },
{ "domain": "apps.apple.com", "mentions": 55 },
{ "domain": "en.wikipedia.org", "mentions": 49 },
{ "domain": "www.makeuseof.com", "mentions": 12 },
{ "domain": "play.google.com", "mentions": 11 }
]
}
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.
License
MIT