CitationBench is a developer-grade GEO tracking API that unifies traditional rank data with AI citation monitoring across ChatGPT, Claude, and Perplexity — all via REST or hosted MCP server.
# Track GEO visibility: rank position + AI citation in one callPOST /v1/research/ai-citation> { "query": "best local SEO platform", "engines": ["chatgpt","claude","perplexity"] }chatgpt · cited: ✓ rank: 2 share_of_voice: 0.38claude · cited: ✓ rank: 4 share_of_voice: 0.21perplexity · cited: ✗ rank: — share_of_voice: 0.00# Pull traditional rank alongside GEO dataGET /v1/rank-tracking{ "keyword": "best local SEO platform", "position": 6, "workspace": "client_acme" }Fragmented tools force agencies to stitch together rank data and AI visibility manually, leaving critical blind spots.
Tools like Ahrefs track traditional rankings but are completely blind to whether your brand appears in ChatGPT, Claude, or Perplexity results.
Stitching rank trackers, citation monitors, and content tools across multiple APIs means duplicate data, broken workflows, and constant context-switching.
Off-the-shelf rank APIs return national averages without the intent and relevance labeling needed to make accurate geo-targeted content decisions.
The fix
CitationBench exposes a single API surface for GEO tracking: daily rank positions, AI search citation share-of-voice across ChatGPT, Claude, and Perplexity, and 2D keyword labeling — all scoped per client workspace via REST or MCP.
Five integrated capabilities that cover the full GEO measurement workflow from citation monitoring to rank tracking and keyword intelligence.
GEO Measurement
Track brand citations in ChatGPT, Claude, and Perplexity for any target query via `research.ai_citation.check`. Returns share-of-voice per engine, citation rank, and historical trajectory — the core of any GEO tracking workflow.
Traditional SEO
Monitor keyword positions daily across all client workspaces. Results scoped per client via `X-Workspace-Id`, available via REST, MCP tool, and dashboard — giving you traditional and GEO data in one place.
Keyword Intelligence
Every keyword tagged on intent and relevance axes via `research.keyword.relabel` and `research.keyword.search`. Filter and prioritize geo-targeted keyword sets at scale without manual classification work.
Developer Access
Access the full GEO tracking API surface through the hosted MCP server at `mcp.citationbench.com/mcp`. No self-hosting required. Connect from Claude Code, Cursor, or Windsurf and call `research.ai_citation.*` directly.
Agency Architecture
Manage GEO tracking across all client brands under one master API key. Every rank and citation call is scoped per client via the `X-Workspace-Id` header, with bulk actions and white-label-ready output.
How it works
An `sk_test_*` key lands in your dashboard instantly. No demo gate — start calling real endpoints with shape-complete responses.
`claude mcp add citationbench https://mcp.citationbench.com/mcp` from Claude Code, Cursor, or any MCP client. Or `curl` against `api.citationbench.com/v1/*` directly.
Every tool returns shape-complete demo data without auth, so your agent works before the user signs up. Tools across research, production, indexing, link-building, and agents.
Add `X-Workspace-Id: ws_***` to scope per client. Switch to a live `sk_live_*` key when you're ready. Same API surface, same SDK.
Why CitationBench
Hosted at mcp.citationbench.com/mcp. Works with Claude Code, Cursor, Claude Desktop, Windsurf, and ChatGPT Apps. No self-hosting required.
Every long-running call runs on Cyclonic workers — survives restarts, cancellable, resumable, streams via SSE. Production-safe by default.
One master API key, N client workspaces. Switch with a single `X-Workspace-Id` header. Per-client data isolation, bulk ops across all of them.
Every endpoint responds in shape-complete demo mode without auth, so you can build the agent before the user signs up.
FAQ
Unify rank data and AI citation monitoring across all your client workspaces with one developer-grade GEO tracking API.
View MCP Docs