Skip to main content
Glama

discover_competitors

Read-onlyDestructive

Organic competitors for ANY domain (yours or a prospect's) in one call — domains ranking for the same keywords, with the overlap counted. TREAT THE OUTPUT AS A CANDIDATE LIST, NOT AN ANSWER: for a site with few ranked keywords the top rows are platforms (LinkedIn, Reddit, Substack, Wikipedia) that co-rank by accident. The real signal is avg_position — a domain ranking 4th where it overlaps you is a competitor; one ranking 14th is usually a publisher. Shortlist 4-6 real companies by hand, then call domain_keyword_profile on each. See docs/competitor-analysis-runbook.md.

Input Schema

NameRequiredDescriptionDefault
limitNoCandidates to return after filtering (default 10)
domainYesDomain to find competitors for, e.g. cogniswitch.ai
location_codeNoCountry code for the index: 2840 US (default), 2356 India, 2826 UK, 2036 Australia, 2124 Canada. Pass the brand's market.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well past the annotations, which only declare readOnly/openWorld/idempotent flags. The description discloses output-quality behavior that no structured field carries: that low-keyword sites surface LinkedIn/Reddit/Substack/Wikipedia as false positives, and that avg_position is the discriminator (4th = competitor, 14th = publisher). This is exactly the kind of operational context an agent cannot infer.

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 the purpose, then the caveat, then the remedy — a good information hierarchy. It is dense and every sentence carries weight, though the docs/competitor-analysis-runbook.md pointer is a reference the agent may not be able to resolve, and the caps-lock warning is slightly heavy for the length.

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

Completeness4/5

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

No output schema exists, so the description must carry return semantics, and it largely does: overlapping keyword domains, a counted overlap, an avg_position signal, and a post-filter candidate count. It stops short of describing the full row shape (what other columns come back), which is the only real remaining gap for an agent consuming the result.

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 the schema already documents domain, limit (post-filter count, default 10), and location_code with example codes. The description only adds a light gloss ('yours or a prospect's') and no format or syntax detail beyond the schema, so the baseline 3 for fully-covered parameters applies.

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+resource with scope: 'Organic competitors for ANY domain (yours or a prospect's) in one call — domains ranking for the same keywords, with the overlap counted.' That is precise enough that an agent can distinguish it from sibling landscape tools like get_competitive_landscape or get_competitor_keyword_overlap 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 Guidelines4/5

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

Explicitly frames the output as a candidate list rather than an answer, warns that platform domains co-rank by accident on thin sites, and prescribes a next step ('Shortlist 4-6 real companies by hand, then call domain_keyword_profile on each'). What it does not do is route against the sibling competitor tools (get_competitive_landscape, list_competitors, get_competitor_keyword_overlap), so alternative selection is left to inference.

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