CitationBench gives agencies a single REST API with 35+ tools to unify SEO research, rank tracking, content production, and link building across every client workspace.
# Pull ranked keyword data for a client workspaceGET /v1/rank-tracking/keywords> curl -H "X-Workspace-Id: ws_acme" https://api.citationbench.com/v1/rank-tracking/keywords{ "total": 142, "keywords": [{ "kw": "seo dashboard api", "rank": 4, ...# Check AI citation share-of-voice alongside traditional ranksPOST /v1/research/ai-citation> { "query": "best seo platform for agencies", "engines": ["chatgpt","perplexity"] }chatgpt · cited: ✓ rank: 2 share_of_voice: 0.34perplexity · cited: ✗ rank: — share_of_voice: 0.00Stitching five platforms together to build a client dashboard creates fragile logic, stale data, and wasted engineering hours.
AgencyAnalytics pulls ranks, Ahrefs holds backlinks, Surfer owns content scores — reconciling them into one dashboard breaks constantly.
Every major SEO API ignores ChatGPT, Claude, and Perplexity — leaving your dashboard blind to where buyers actually search today.
Managing separate API credentials and rate limits for each client workspace multiplies integration debt with every new account.
The fix
CitationBench is a single REST API covering research, rank tracking, content production, indexing, link building, and AI citation monitoring. Scope every call to a client workspace via X-Workspace-Id — no credential juggling, no stitching.
Five API surface areas covering ranks, research, content, links, and AI visibility — all accessible under one authenticated endpoint with per-workspace scoping.
Dashboard Core
Pull per-keyword rank history scoped by client via the X-Workspace-Id header. Bulk rank pulls across all workspaces in one call. Available via REST, MCP tool, and dashboard simultaneously.
Agency Architecture
One master API key manages N client workspaces. All calls scoped via X-Workspace-Id — isolating keywords, content, campaigns, and link-building data per client without separate credentials.
GEO Reporting
Track brand citations in ChatGPT, Claude, and Perplexity via research.ai_citation.check and research.ai_citation.share_of_voice. Returns historical trajectory and share-of-voice scores ready for direct dashboard display.
Research Layer
Add competitor URLs via research.competitor.add to pull backlink profiles and keyword universes. Keyword overlap matrices expose content and link gaps directly consumable in custom reporting UIs.
Integration Layer
Register per-workspace webhooks to push rank updates, indexing confirmations, publish completions, and link-building replies into your custom dashboard in real time. No polling required.
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
One API, all clients, every SEO and AI visibility signal your dashboard needs.
Start Free