CitationBench's industry-first intent × relevance taxonomy tags every keyword on two axes, so agencies can prioritize content that converts instead of guessing at user context.
Flat keyword lists strip context, leaving teams unable to prioritize or align content to the buyer journey.
Generic tools return volume and difficulty but never tell you whether a keyword signals a buyer or a browser.
Without a relevance axis, teams waste cycles writing content for tangential keywords that never convert to pipeline.
Ranking reports built on unlabeled keywords make every keyword look equal, obscuring what actually drives revenue.
The fix
CitationBench's 2D keyword labeling maps every keyword across intent (informational, commercial, transactional, navigational) and relevance (core, adjacent, tangential). Filter, prioritize, and build content plans grounded in buyer context via the research.keyword API or MCP tools.
From labeling your keyword universe to closing gaps competitors miss, every feature below connects to the intent and relevance data that 2D labeling produces.
Core Taxonomy
Tags every keyword on two axes using research.keyword.relabel and research.keyword.search. Filter your entire keyword universe by intent stage or relevance tier before a single word is written.
Keyword Discovery
POST /v1/research/keyword discovers, clusters, and applies 2D labels in one call. Bulk import via research.keyword.bulk_create. Every keyword enters your workspace already categorized by intent and relevance.
Opportunity Detection
research.serp_gap.analyze detects where SERP result quality drops and domain authority is low. Pair with 2D labels to surface core-intent keywords that are both high-value and realistically rankable.
Content Planning
research.content_gap.find compares your content inventory against competitor pages and labeled keyword targets. Returns prioritized gaps organized by the intent and relevance tiers your 2D labels already define.
Content Production
produce.blog_post.create and produce.blog_post.bulk_create turn your labeled keyword lists directly into SEO briefs and full drafts. Intent labels travel with the keyword into the brief so content matches the search context.
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's 2D keyword labeling gives every keyword an intent and relevance label so your content strategy builds on real buyer context.
Start Free