Skip to main content
Glama

Preferly

Quick AI visibility check

quick_ai_visibility_check
Read-onlyIdempotent

Use this when the user asks what AI assistants say about a specific business, or whether AI tools mention or recommend it. Given the business's public website, it reads the site (robots.txt, the homepage and up to 2 contact, booking or pricing pages), writes 3 typical customer questions, and asks 3 AI models each question, answering from what they already know (no web search). It reports, for each model, whether it named the business and where it ranked when it gave a list, up to 2 statements where an AI model contradicts the website, and a one-line crawler summary. Input: one public website and, optionally, the business name. A result for the same website may come from a check run in the last 24 hours. Changes nothing on the site.

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": {
      "website": "<website>"
    },
    "name": "quick_ai_visibility_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
cityNoThe city the business serves, if the website doesn't say.
websiteYesThe public website to check, like example.com or https://www.example.com. One site per call.
business_nameNoThe business's name, if the website doesn't make it obvious.

Output Schema

NameRequiredDescriptionDefault
toolYes
linksYesLinks to pages on www.preferly.ai
cachedNoTrue when this is a recent check's result, served again
domainYes
modelsNo
statusYespartial: 2 of 3 models answered
checkedAtNoWhen the models were asked (UTC)
previewLabelNo
contradictionsNoStatements where an AI model contradicts the website
crawlerSummaryNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, openWorld, non-destructive), it discloses the key behavioral constraints: models answer from prior knowledge with no web search, up to 2 contradictory statements are surfaced, a result may be reused from a check run in the last 24 hours, and nothing on the site is changed. These are exactly the surprises an agent would otherwise not anticipate.

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 a single dense paragraph, but the usage trigger is front-loaded and the subsequent sentences each carry distinct information (inputs read, questions generated, models queried, outputs reported). Slightly long, yet nothing is clearly redundant with the title.

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?

For a multi-step, multi-call operation the description covers the workflow, the no-web-search limitation, caching, and read-only behavior, and an output schema exists so return values need little explanation. The only gap is the unaddressed city parameter, which is relevant to how a business is identified.

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 coverage is 100%, so the schema already documents all three parameters, making 3 the baseline. The description restates the website as 'one public website' and business_name as optional, but never mentions the city parameter or its purpose of supplying location when the site is silent, so it adds only marginal meaning.

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

Purpose4/5

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

The description names a concrete verb chain and resource: it reads a given public website (robots.txt, homepage, up to 2 contact/booking/pricing pages), writes 3 customer questions, queries 3 AI models, and reports mentions, ranking and contradictions. That is far more specific than a restated title. It never explicitly distinguishes itself from siblings such as check_ai_crawler_access, even though it emits a 'crawler summary', so routing between them is left to inference.

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 opening sentence gives an explicit trigger: use when the user asks what AI assistants say about a specific business or whether AI tools mention/recommend it. It also implicitly scopes out non-business or non-website asks. It stops short of naming when-not conditions or pointing to the sibling tools.

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.