Skip to main content
Glama

create_citation_check

create_citation_check

Test whether ChatGPT, Perplexity and Google AI Overview cite a website for one question (free tool)

Asks one question to three AI answer engines (ChatGPT with web search, Perplexity, Google AI Overview) in the chosen market, and reports for each engine whether your domain is cited as a source (cited, a citation on your registrable domain or one of its subdomains), whether your brand is named in the answer (mentioned, which is NOT a citation), which of your pages are cited, an excerpt of the answer, its sources, and the domains cited instead of yours.

One answer, on one day. This is a snapshot, not a lasting measure: AI answers change from one week to the next, and between two calls. Run the test again to compare.

Asynchronous, poll the result. This call only starts the test and answers HTTP 202 with a checkId and a pollUrl. Call GET /api/v1/tools/citation-check?checkId=... every 3 seconds until status is done or failed; a test usually takes less than 2 minutes. MCP clients must call the get_citation_check tool again until the status is terminal.

Identical questions are reused for 24 hours. The same question (case and spaces ignored) in the same market, asked less than 24 hours ago, returns the engine answers already collected, recomputed for your domain: HTTP 200 with reused true and status already done. Nothing is paid for again, and your daily quota is given back.

Domain. Send a domain name or any URL of the site: it is reduced to its registrable domain (https://www.example.co.uk/blog/ becomes example.co.uk). IP addresses, local names and unknown suffixes return 400 INVALID_DOMAIN.

Tiers, per UTC day.

  • Without an API key, free anonymous tier: 1 test per day per IP address.

  • Signed-in account, or API key of an account whose plan includes API access: 10 tests per day.

The API key of an account whose plan does NOT include API access does not authenticate, and the call returns 401. Remove the Authorization header to use the free anonymous tier instead.

Quota headers: X-RateLimit-Limit, X-RateLimit-Used, X-RateLimit-Remaining, X-RateLimit-Reset (Unix time of the next UTC midnight). Retry-After is set on 429 and 503. A 502 or 503 answer gives the consumed quota back, and so does a 429 FREE_CAPACITY_REACHED and a 200 reused answer; SERVICE_UNAVAILABLE consumes none.

Request format. Send the body as JSON with Content-Type: application/json: any other content type returns 415. Without an Authorization header, a request sent by a web page of another site (an Origin other than the SERPmantics app, or Sec-Fetch-Site: cross-site) returns 403. Server-to-server calls send no Origin header and are not affected.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
domainYesDomain to look for in the answers, or any URL of the site. Reduced to the registrable domain.
marketYesLanguage and country in which the engines are asked.
questionYesThe question a prospect would ask an AI assistant, 10 to 200 characters once spaces are collapsed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden and does so thoroughly: HTTP 202 with checkId/pollUrl, 3-second polling cadence, auth-tier quota rules (1/day anonymous vs 10/day), the 401 behavior when a plan lacks API access, 415/403 request-format rules, rate-limit headers, and exactly which status codes refund quota.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is long, but front-loaded with the core purpose and organized into labeled sections (async/poll, reuse, domain, tiers, headers, request format) so every block maps to a real invocation decision. A little of the quota-refund detail could be trimmed, but nothing is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, yet the description enumerates the returned fields (cited vs mentioned, cited pages, excerpt, sources, competitor domains) and the full async lifecycle, so an agent has everything needed to call and interpret the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds meaning beyond it: domain normalization to the registrable domain with a concrete example, and the 400 INVALID_DOMAIN outcome for IPs, local names and unknown suffixes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('test whether ... AI engines cite a website for one question') and immediately names the three engines and the market scoping. An agent can distinguish this from every create_* sibling without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly frames this as a one-question snapshot and routes the agent to the get_citation_check sibling for polling, naming the exact terminal-status condition. It also states when results are reused (same question, same market, <24h) and what to do to compare.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources