Skip to main content
Glama

Cite42: AI visibility and SEO data for AI agents

cite42_analyze_competitor_content

Read-only

See how competitors show up in AI answers for a topic: their rankings, a head-to-head against your brand, the sources AI cites and keyword demand. For cited pages that name them but not you, use cite42_find_ai_citation_gaps. Costs at most $0.72 per call, charged only for the steps that succeed. Billed in USD (result field cite42Billing) to the user's prepaid Cite42 balance, and failed calls are free; exact prices from cite42_pricing (free). For plans over 20 calls or $5, estimate the cost and confirm with the user first.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "competitors": "<competitors>"
    },
    "name": "cite42_analyze_competitor_content"
  }
}

Input Schema

NameRequiredDescriptionDefault
brandNoOptional primary brand/domain to compare against competitors.
topicNoOptional topic/category to constrain the analysis.
modelsNoAI surfaces to query, each billed separately; pass a subset when the user names surfaces or wants a lower cost. Omit for the defaults (chatgpt = the OpenAI API, perplexity, gemini); fullSweep queries all five. google_ai_overview accepts queries up to 700 characters, the others 2000.
countryNoISO-2 country code for localized SEO keyword data.us
fullSweepNoQuery all five AI surfaces (adds claude and google_ai_overview) for full cross-surface coverage, at a higher cost. Ignored when models is given.
competitorsYesCompetitor brands, domains, or channels to analyze.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / models / description
      Previous value: -"AI surfaces to query, each billed separately; pass a subset when the user names surfaces or wants a lower cost. Omit for the defaults (chatgpt, perplexity, gemini); fullSweep queries all five. google_ai_overview accepts queries up to 700 characters, the others 2000."New value: +"AI surfaces to query, each billed separately; pass a subset when the user names surfaces or wants a lower cost. Omit for the defaults (chatgpt = the OpenAI API, perplexity, gemini); fullSweep queries all five. google_ai_overview accepts queries up to 700 characters, the others 2000."
  2. Changed2 schema fields changed
    • changedInput schema / properties / fullSweep / description
      Previous value: -"Query all five AI surfaces instead of the three default ones, adding claude and google_ai_overview. Costs more per call. Use it when the user wants complete cross-model coverage, is comparing surfaces against each other, or asks specifically about Claude or Google AI Overviews. Ignored when models is given."New value: +"Query all five AI surfaces (adds claude and google_ai_overview) for full cross-surface coverage, at a higher cost. Ignored when models is given."
    • changedInput schema / properties / models / description
      Previous value: -"Optional model subset. Omit to query the default surfaces (chatgpt, perplexity, gemini). Pass [\"perplexity\"] or [\"perplexity\",\"claude\"] when the user names specific surfaces or wants to reduce cost. The full set is chatgpt, claude, perplexity, gemini, google_ai_overview — to query all of them, set fullSweep instead of listing them. Google AI Overview supports queries up to 700 characters; other AI surfaces accept up to 2000."New value: +"AI surfaces to query, each billed separately; pass a subset when the user names surfaces or wants a lower cost. Omit for the defaults (chatgpt, perplexity, gemini); fullSweep queries all five. google_ai_overview accepts queries up to 700 characters, the others 2000."
  3. Changed1 schema field changed
    • changedInput schema / properties / models / description
      Previous value: -"Optional model subset. Omit to query the default surfaces (chatgpt, perplexity, gemini). Pass [\"perplexity\"] or [\"perplexity\",\"claude\"] when the user names specific surfaces or wants to reduce cost. The full set is chatgpt, claude, perplexity, gemini, google_ai_overview — to query all of them, set fullSweep instead of listing them."New value: +"Optional model subset. Omit to query the default surfaces (chatgpt, perplexity, gemini). Pass [\"perplexity\"] or [\"perplexity\",\"claude\"] when the user names specific surfaces or wants to reduce cost. The full set is chatgpt, claude, perplexity, gemini, google_ai_overview — to query all of them, set fullSweep instead of listing them. Google AI Overview supports queries up to 700 characters; other AI surfaces accept up to 2000."
  4. First observed

TDQS

A4.2/5.0
Behavior3/5

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

The description goes well beyond the annotations by disclosing cost ceilings ($0.72/call), per-step billing, the cite42Billing result field, prepaid balance charging, and that failed calls are free. Combined with readOnlyHint/openWorldHint this is strong; however the billing caveats consume most of that effort and nothing is said about latency or result volumes, so it sits just above adequate rather than exemplary.

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?

Purpose and the alternative-tool routing are front-loaded in the first two sentences, which is the right order. The three trailing sentences on pricing thresholds are useful but somewhat repetitive (cost cap, per-step billing, free failures, pricing tool, confirmation rule) and could be tightened.

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?

With no output schema, the description still tells the agent what comes back (competitor rankings, head-to-head, cited sources, keyword demand) and fully covers cost, billing, and confirmation obligations for a paid, open-world call. Nothing needed to invoke it safely and correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so models, fullSweep, country, brand, topic and competitors are already fully documented. The description only loosely gestures at brand ('against your brand') and topic ('for a topic') without adding format or precedence semantics beyond the schema. Baseline 3 applies when the schema carries the load.

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 ('See how competitors show up in AI answers') and enumerates the concrete outputs: rankings, head-to-head against your brand, cited sources, and keyword demand. It also explicitly names the sibling it is not (cite42_find_ai_citation_gaps), so an agent can route correctly without opening schemas.

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?

Gives an explicit exclusion rule ('For cited pages that name them but not you, use cite42_find_ai_citation_gaps') plus operational guidance on passing a subset of models for lower cost and on when to estimate and confirm spend with the user (>20 calls or $5). This covers when to use, when not to, and the alternative.

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.