Skip to main content
Glama

Get Competitors

get_competitors
Read-onlyIdempotent

Get competitor analysis data from AI search.

Understand how you stack up against competitors across AI models. Every view is computed over days and, when given, only the prompts carrying tag_ids - so you can ask "how do we compare inside this one business line" in a single call.

Views:

  • 'summary': Overview of competitive landscape.

  • 'arena': Prompt-by-prompt leaderboard across all competitors.

  • 'head-to-head': Direct comparison with one competitor (requires 'competitor' param).

  • 'by-model': Competitive performance broken down by AI model.

  • 'threats': Competitors gaining ground + opportunities where you're ahead.

  • 'heatmap': Competitor presence matrix across prompts and models.

  • 'over_time': Daily visibility for you and each competitor. This is the history behind the Competitive Trend chart, recomputed from stored daily results, so it is available for the whole window straight away rather than only from the day you started asking.

Args: brand_id: The brand to check (required). view: Analysis view. Default 'summary'. competitor: Required for 'head-to-head'. On 'over_time' it narrows the response to you and that one competitor, including competitors outside the top slice. days: History window: 7, 14, 30 or 90. Default 30. period: A frozen calendar period (YYYY-MM or YYYY-Qn). When given, days is ignored and the response carries a period block. view='summary' only, and the shape differs: your_rank, rank_pool, your_visibility, competitors (each with prior_rank, prior_visibility, positions_gained, visibility_delta, new_in_list), notable_change, and perception_competitors. tag_ids: Optional. Comma-separated tag IDs from list_tags. Recalculates every metric over only the prompts carrying those tags. limit: 'over_time' only: how many competitor series to return, best ranked first. 1-50, default 10. response_format: 'concise' (default) trims wide matrices/leaderboards to a readable head to protect context; 'detailed' returns the full grid (still held under the response ceiling).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNo
viewNosummary
limitNo
periodNo
tag_idsNo
brand_idYes
competitorNo
user_intentNoAnalytics hint: the user's latest request in one short sentence. Omit secrets and prior chat.
response_formatNoconcise

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), yet the description still adds real behavioral context: that 'over_time' is recomputed from stored daily results and available for the whole window immediately, that 'period' overrides 'days' and changes the response shape (with the specific period block fields named), and that 'concise' trims matrices to protect context while 'detailed' returns the full grid.

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?

Front-loaded with purpose, then cleanly sectioned into Views and Args. It is longer than average, and a few clauses (the business-line quote example, the Competitive Trend chart aside) are illustrative rather than load-bearing, but almost every line carries decision-relevant information.

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?

For a 9-parameter, no-output-schema tool, the description is complete enough to call correctly: it covers views, per-parameter constraints, the period-block response shape, and the concise/detailed tradeoff. An agent would not need to guess at response structure for the main paths.

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

Parameters5/5

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

Schema description coverage is only 11%, so the description carries the burden and does so thoroughly: it explains brand_id, every enum value of view, competitor behavior on both 'head-to-head' and 'over_time' (including that it pulls in competitors outside the top slice), days vs. period interaction, tag_ids semantics plus its dependency on list_tags, and limit's range and ordering. This is meaning well beyond what the bare schema enums convey.

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 ('Get competitor analysis data from AI search') and then enumerates seven named views, each with a one-line definition of the data it returns. An agent knows exactly what this produces without opening the schema, and the view list distinguishes it from single-metric siblings like get_visibility_scores or get_rankings.

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

Usage Guidelines4/5

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

The view descriptions function as usage guidance, and constraints are explicit: 'head-to-head' requires the competitor param, 'period' is view='summary' only, 'limit' is 'over_time' only. What's missing is routing against siblings — compare_brands and compare_reports are never mentioned as alternatives for cross-brand comparisons, so the agent must infer when this tool is the right one.

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