LLM Audit
Server Details
Measure whether AI assistants actually recommend a brand, from measured answers.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- nahuelsoria/llmaudit-mcp
- GitHub Stars
- 1
- Server Listing
- askedthrice-mcp
TDQS
Scored across 2 tools
The two tools have clearly distinct roles: start_visibility_check initiates an asynchronous measurement, while get_visibility_check retrieves its result. There is no overlap in purpose, and the start/get contrast makes the workflow obvious.
Both tools follow the same verb_noun pattern using the shared resource 'visibility_check' with prefixes start_ and get_. This creates a predictable and consistent naming convention.
Two tools is minimal and slightly below the typical 3-15 range, but each tool is necessary for the single async measurement workflow. The count feels appropriate for the narrow, focused purpose of the server rather than bloated.
The server covers the full lifecycle of its core domain: starting a visibility measurement and retrieving its outcome. There are no obvious dead ends, since start returns a runId and get returns both in-progress and final states.
Available Tools
2 toolsget_visibility_checkGet visibility checkARead-onlyIdempotentInspect
Collect the result of a measurement started with start_visibility_check. Returns status running while the providers are still answering, so poll every 20 to 30 seconds. When ready it reports a verdict, how many of the buyer questions the brand won, which competitors were named instead, and which providers actually answered.
| Name | Required | Description | Default |
|---|---|---|---|
| runId | Yes | From start_visibility_check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description discloses important behavior: it can return a 'running' status, it requires polling, and it details what the ready result contains (verdict, won counts, competitors, providers). This gives the agent a reliable model of the tool's dynamic behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no wasted words: purpose, polling behavior, and ready-state output are each addressed succinctly. The most important usage constraint is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter polling tool with rich annotations, the description covers the full call cycle: when to call, how long to wait, what status to expect, and what the final result contains. No output schema exists, but the description adequately compensates by listing the result components.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents runId with 100% coverage ('From start_visibility_check'), and the description reinforces the relationship without adding deep parameter-level detail. Baseline 3 is appropriate because the schema carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action as collecting the result of a measurement started with start_visibility_check, and it naturally distinguishes this tool from its sibling, which initiates the measurement. The verb 'collect' plus the specific resource make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides concrete usage context: it must be called after start_visibility_check, and it should be polled every 20 to 30 seconds while status is running. It does not explicitly list exclusions or alternatives, but the single sibling relationship is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_visibility_checkStart visibility checkAInspect
Measure whether a brand shows up when buyers ask AI assistants for a recommendation. Asks real buyer questions to OpenAI, Anthropic and Gemini and reports what they answered, not what they claim they would answer. Free, no signup, one measurement per domain every 30 days. Returns a runId: call get_visibility_check with it after about a minute. If the domain was already measured this month the response says quota_reached and includes when it ran.
| Name | Required | Description | Default |
|---|---|---|---|
| brand | Yes | Brand name as customers write it | |
| website | Yes | Domain, like yourbrand.com | |
| category | Yes | What the business sells, in plain words | |
| language | No | Language the buyer questions are asked in | |
| location | No | Where the business competes, like 'Cordoba, Argentina' | |
| competitors | No | Up to 5 real competitors, comma separated |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the annotations by disclosing that the tool makes live calls to OpenAI, Anthropic, and Gemini, reports actual answers rather than claimed behavior, is rate-limited per domain, and returns either a runId or a quota_reached signal. It also implies the operation is asynchronous, which is important for invocation behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, each carrying necessary information: the core measurement, the method and truthfulness, the follow-up flow, and the quota behavior. It is front-loaded with the main purpose and contains no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description adequately explains the return behavior (runId and quota_reached) and the follow-up call. It covers external side effects, constraints, and async timing, so an agent has enough context to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all six parameters with descriptions, achieving 100% coverage, so the description doesn't need to repeat them. The description adds no parameter-specific guidance beyond the general mention of 'domain' in the quota rule, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear, specific objective: measure whether a brand appears in AI assistant recommendations by asking real buyer questions to OpenAI, Anthropic, and Gemini. It distinguishes itself from the sibling get_visibility_check by noting this tool starts a run and returns a runId, while the sibling retrieves the result.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides concrete usage guidance: call this to start a measurement, then call get_visibility_check with the runId after about a minute. It also states constraints (free, no signup, one measurement per domain every 30 days) and the quota_reached response, so an agent knows when this tool is or isn't available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
get_visibility_check - First observed
start_visibility_check
Related MCP Connectors
Measure whether AI assistants actually recommend a brand, from measured answers.
Measure how AI assistants cite your brand. Returns measured data and ready-to-apply fixes.
See how AI assistants answer about your brand
Free, no signup. Check if ChatGPT, Perplexity & Google AI recommend a brand in 15 markets (GEO/AEO).
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables querying how often a brand is recommended by AI search and chat surfaces, returning recommendation and inclusion rates for any given brand.-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to check whether AI assistants recommend a brand and audit a site's AI-agent readiness, providing visibility scores and specific gaps.MIT
- AlicenseAqualityCmaintenanceTrack brand visibility across ChatGPT, Perplexity, Claude, and Gemini.695 npm9MIT
- AlicenseNot gradedqualityCmaintenanceChecks if a brand appears in an LLM's answer for GEO/AI-SEO. Part of Pipeworx gateway.5 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.