CitationBench is the Frase alternative that unifies content production with daily rank tracking across every client workspace, so your team stops switching tools.
Content optimization without rank tracking means you are writing blind and reporting gaps to clients.
Frase helps you write content but has no daily rank tracking, forcing agencies to bolt on a separate rank monitoring tool.
Piecing together Frase, Ahrefs, and AgencyAnalytics means keyword data, content, and position history never share the same screen.
Without unified rank and content data per workspace, building client reports requires manual exports and reconciliation every single time.
The fix
CitationBench combines long-form content generation, programmatic landing pages, and daily rank tracking in one platform with per-client workspace isolation, so agencies run content ops and position monitoring without switching tools.
CitationBench covers every step from research through content production to daily rank monitoring, all scoped per client workspace.
Rank Monitoring
Track keyword positions daily for every client via per-workspace scoping using the X-Workspace-Id header. Pull bulk rank history via REST, MCP tool, or the dashboard. White-label-ready reporting included.
Content Production
Generate briefs, drafts, and refined blog posts via produce.blog_post.create or bulk-create from a keyword list. Pair with content refiners to enforce brand voice across every client account automatically.
Brand Consistency
Configure style, voice, CTA insertion, and competitor removal rules once per agency account via produce.refine.*. They apply automatically across all client workspaces so output stays consistent without manual editing.
Keyword Research
Discover, cluster, and label keyword sets from a seed URL via POST /v1/research/keyword. Keywords persist and flow directly into rank tracking, so research and monitoring share the same dataset without exports.
Agency Architecture
A single master API key manages every client workspace via X-Workspace-Id scoping. Keywords, content, rank data, and campaigns are fully isolated per client while remaining visible in a unified agency view.
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
CitationBench is the Frase alternative that adds daily rank tracking, agency workspaces, and automated publishing in one platform.
Start Free