Launching Citation Intelligence MCP: free, self-hosted AI citation tracking

Free, self-hosted MCP server that reports which URLs ChatGPT, Claude, Perplexity, Google AI Overviews, Gemini, and Bing cite for any query. 12 tools, BYO API keys, no backend.

AutomateLab title card: 'Launching Citation Intelligence MCP, free, self-hosted AI citation tracking' on a dark blue gradient with a hierarchical network icon in indigo on the right.
Citation Intelligence MCP: 12 tools for AI citation tracking across ChatGPT, Claude, Perplexity, Gemini, Google AI Overviews, and Bing.

TL;DR: Citation Intelligence MCP is a free, self-hosted Model Context Protocol server with 12 tools that reports which URLs ChatGPT, Claude, Perplexity, Gemini, Google AI Overviews, and Bing cite for any query, with no backend, no account, and bring-your-own API keys.

The package targets developers, indie hackers, content creators, and SEO or GEO practitioners who want programmatic AI citation data without paying $295 to $499 per month for a hosted dashboard. Install it with npx -y @automatelab/citation-intelligence, set whichever engine keys you have, and the same 12 tools become available in any MCP-compatible client: Claude Desktop, Claude Code, Cursor, Continue, Cline, n8n, LangGraph. Nothing is uploaded, no telemetry runs by default, and the MIT-licensed source is on GitHub. The full product page lives at Citation Intelligence MCP on automatelab.tech.

What is Citation Intelligence MCP?

Citation Intelligence MCP is an MCP server that answers a single question across every AI search engine that ships citations: who gets cited for query X? Where hosted AI citation dashboards aggregate the same data into a web app, this server pipes it straight into your agent or editor through the Model Context Protocol. The query goes from your client to the vendor API and back; no proxy, no remote cache.

Twelve tools cover the practical workflows around AI citation tracking: pull citations for a query, check whether a domain is cited across a query cluster, score a URL for citation likelihood without firing any LLM, audit an entire sitemap, and join Google Search Console performance against AI citation status to surface the queries that rank in Google but are invisible in AI.

Flow diagram with three columns: an MCP client (Claude Desktop, Claude Code, Cursor, Continue, Cline, n8n, LangGraph) on the left, the Citation Intelligence MCP server with 12 tools, local cache, and your API keys in the middle, and six engine adapters (Perplexity Sonar, Google AI Overviews, Bing Web Search, Claude, ChatGPT, Gemini) on the right; arrows go in both directions and the server runs entirely on the user's machine with no central backend, no account, and no telemetry.
The server runs locally, holds your API keys as environment variables, and proxies requests straight to each engine vendor.

What tools does Citation Intelligence MCP provide?

The server exposes 12 tools. Most need at least one engine API key; predict_citation, cited_for, and wikipedia_mentions need zero keys.

ToolPurpose
check_citationsURLs cited by Perplexity, Claude, ChatGPT, Gemini, or Bing for a query
am_i_citedPresence and rank for a domain across a query cluster
ai_overviewGoogle AI Overview presence and cited sources for a query
cited_forQueries the domain has been cited for, from local cache. No API spend
predict_citationCitation likelihood score (0-100) for a URL from public signals. No LLM fired
track_queriesSave, load, or list named query panels (editorial watchlists)
run_panelRun a saved panel through am_i_cited and snapshot to disk
citation_trendTime-series report of citation rate plus per-query gained or lost deltas
compare_domainsSide-by-side predict_citation across 2-10 URLs (you vs competitors)
wikipedia_mentionsWikipedia articles that already link to a domain. Zero keys
audit_sitemapBulk predict_citation across every URL in a sitemap, worst-first
gsc_citation_gapJoin Google Search Console performance with AI citation status. Finds queries that rank in Google but are invisible in AI

How do I install Citation Intelligence MCP?

The server runs on Node 20 or later and ships on npm as @automatelab/citation-intelligence. The fastest install is the one-liner:

npx -y @automatelab/citation-intelligence

For Claude Desktop, add the server to %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "citation-intelligence": {
      "command": "npx",
      "args": ["-y", "@automatelab/citation-intelligence"],
      "env": {
        "PERPLEXITY_API_KEY": "pplx-...",
        "SERPAPI_KEY": "...",
        "ANTHROPIC_API_KEY": "sk-ant-...",
        "OPENAI_API_KEY": "sk-...",
        "GEMINI_API_KEY": "..."
      }
    }
  }
}

Set only the keys you have. Any MCP client that supports stdio transport works with the same command and args pattern. For Claude Code, add the same block to .mcp.json at your project root.

Which AI engines does Citation Intelligence MCP support?

The check_citations tool ships adapters for six engines. Pick whichever you have an API key for; the auto setting picks the first available.

EngineEnvironment variableFree tier?
Perplexity SonarPERPLEXITY_API_KEYYes, on signup
Google AI Overviews (via SerpAPI)SERPAPI_KEY100 lookups per month
Bing Web SearchBING_API_KEYYes
Claude (Anthropic)ANTHROPIC_API_KEYPaid only
ChatGPT (OpenAI)OPENAI_API_KEYPaid only
Gemini (Google)GEMINI_API_KEYYes

How is this different from Profound, AthenaHQ, or Ahrefs Brand Radar?

The hosted AI citation dashboards (Profound, AthenaHQ, Otterly.AI, Ahrefs Brand Radar) start at $295 to $499 per month and target marketing teams that want charts, alerts, and team seats. Citation Intelligence MCP is the opposite design point: a local server, no account, no centralized backend, no shared dashboard. The 12 tools are the surface; whatever client you point at the server is the UI.

Horizontal bar chart comparing entry-tier monthly pricing of five AI citation tracking products: Citation Intelligence MCP at $0 (self-hosted, BYO keys), Otterly.AI at $99 per month, Profound at $295 per month, AthenaHQ at $499 per month, and Ahrefs Brand Radar at $499 per month, all listed publicly as of May 2026.
Hosted AI citation dashboards start at $99-$499/mo; the MCP server is free and instead spends a few cents per query against your own API keys.

The trade is real. Hosted dashboards pre-model hundreds of millions of prompts and ship polished analytics. This server has no pre-modeled prompts and no charts. What it has is direct API access to the same citation data from an agent or editor that already runs MCP, at the cost of a few cents per query against your own API keys.

How does Citation Intelligence MCP stay free?

  • No central backend. The server runs on your machine. Nothing is uploaded.
  • Free-tier engines first. SerpAPI gives 100 free Google AI Overview lookups per month. Bing Web Search has a free tier. Perplexity offers free Sonar access on signup. Gemini has a free key.
  • Bring your own paid keys for the premium engines (Claude, ChatGPT). Keys pass through directly to the vendor and never touch a third party.
  • Local cache at ~/.config/citation-intelligence/cache.json. Repeated queries hit cache, not the API. Default TTL is 7 days.
  • predict_citation runs with zero keys. It scores citation likelihood from public signals (Wikipedia, schema.org, llms.txt, GitHub, content depth) without firing any LLM.

Who should use Citation Intelligence MCP?

Install this if you are:

  • Building an agent that does research and want it to cite sources LLMs already trust
  • A solo developer or indie hacker checking whether your SaaS is showing up in AI search
  • A content creator confirming your articles are being cited by ChatGPT, Claude, or Perplexity
  • An SEO or GEO practitioner who wants programmatic citation data without a $295 to $499 per month dashboard
  • Running an editorial pipeline and want citation-deficit-driven topic selection
  • Comparing competitor visibility across AI engines for any niche

Skip this if you want a polished marketing dashboard with charts and team seats (try Profound, AthenaHQ, or Otterly.AI), a hosted service with SLAs, citation tracking for academic papers (try citecheck), or 350M+ pre-modeled prompts (that is Ahrefs Brand Radar). For a complementary lightweight check, the free FAQ schema audit tool reports whether a page already exposes FAQPage JSON-LD that AI engines can extract.

How do you check whether Perplexity cites your domain for a query cluster?

From any MCP client connected to the server:

You: For the queries "best AI citation tracker", "MCP for AI search",
     and "self-hosted GEO tool", is automatelab.tech cited by Perplexity?

(agent invokes am_i_cited)

{
  "domain": "automatelab.tech",
  "engine": "perplexity",
  "results": [
    { "query": "best AI citation tracker", "cited": true,  "rank": 4 },
    { "query": "MCP for AI search",        "cited": true,  "rank": 1 },
    { "query": "self-hosted GEO tool",     "cited": false, "matching_urls": [] }
  ],
  "summary": {
    "queries_total": 3,
    "queries_cited": 2,
    "citation_rate": 0.67,
    "average_rank": 2.5
  }
}

How do you score a URL for citation likelihood without an API key?

You: How likely is https://example.com/blog/post to be cited by AI?

(agent invokes predict_citation)

{
  "url": "https://example.com/blog/post",
  "score": 62,
  "grade": "C",
  "signals": {
    "wikipedia_linked": false,
    "github_referenced": false,
    "reddit_referenced": true,
    "llms_txt_present": true,
    "has_article_schema": true,
    "has_faq_schema": false,
    "h2_count": 7,
    "h2_question_count": 1,
    "word_count": 1850,
    "last_modified_days_ago": 42
  },
  "fixes": [
    { "signal": "has_faq_schema", "estimated_lift": "high",
      "suggestion": "Page already has question-style H2s. Wrap them in FAQPage JSON-LD." },
    { "signal": "h2_question_count", "estimated_lift": "medium",
      "suggestion": "Reframe at least 2 H2s as questions users actually ask." }
  ]
}

Scoring is split across six buckets (domain authority, structured data, content depth, link graph, freshness, metadata) so a thin page and a deep page on the same domain get meaningfully different scores. The Wikipedia signal is measured because it correlates strongly with citation, but no "get a Wikipedia article" suggestion is emitted because that advice would be non-actionable.

FAQ

What does Citation Intelligence MCP cost?

The server itself is MIT-licensed and free. The cost is the per-query spend at the engine vendors: roughly $0.01 to $0.03 per query at ChatGPT or Perplexity. predict_citation, cited_for, wikipedia_mentions, and the panel and trend tools cost nothing because they hit local cache or zero-key endpoints.

No. MCP (Model Context Protocol) is an open protocol from Anthropic, but this is a third-party server that runs in any MCP-compatible client. It happens to ship a Claude adapter for the check_citations tool because Claude returns citations.

Does Citation Intelligence MCP store my API keys?

No. API keys are read from environment variables on the MCP process at startup. They are never logged, never persisted, and never sent anywhere except the vendor whose key it is.

Where is the local cache stored?

~/.config/citation-intelligence/cache.json on macOS and Linux, the equivalent path on Windows. Default TTL is 7 days for citation queries and 1 day for AI Overview queries. Delete the file any time to reset.

Which MCP clients work with Citation Intelligence MCP?

Anything that supports stdio transport: Claude Desktop, Claude Code, Cursor, Continue, Cline, n8n (via the MCP node), LangGraph, custom agents built on the official MCP SDKs. The command and args pattern is the same across clients.

Save a query panel with track_queries, then run run_panel on a schedule (weekly is the typical cadence). Each run snapshots to disk. citation_trend returns the per-query deltas: which queries flipped from cited: false to cited: true since the first snapshot. That delta is the real editorial-impact metric.

Can I self-host this on a server instead of a laptop?

Yes. Any environment with Node 20+ and the relevant API keys works. The cache directory is configurable via CITATION_CONFIG_DIR. The MCP transport is stdio, so the typical pattern is to run it from the client process; for a long-lived server, run it under a process supervisor and point your client at it.