Skip to main content
Glama
Website Auditor MCP

Website Auditor MCP

Prioritized fixes

get_recommendations
Read-only

Returns prioritized fixes to raise a website's AI visibility and audit scores, with ranked actions and expected impact drawn from the latest audit evidence.

Instructions

Get specific, prioritized fixes to raise a website's AI visibility and audit scores. Use this when someone asks "how do I fix this," "what should I change," "how do I improve my AI visibility," or after an audit surfaces issues. Returns ranked actions with expected impact, each built from the domain's latest audit and citing its evidence (blocked AI crawlers, missing structured data, the competitor sites the assistants cited). Works with any Website Auditor API key and needs an audit on record for the domain; with Pro it also says where to get listed, what the assistants get wrong about the business, and which file in the fix package fixes each finding — without Pro the listing places are only counted.

Input Schema

NameRequiredDescriptionDefault
domainYesThe website domain, e.g. "example.com".

Output Schema

NameRequiredDescriptionDefault
tierNoWhich list the API served. "free" omits where to get listed, what the assistants get wrong and each finding's fix file; its step marked `locked` only counts what Pro shows.
run_idNoThe audit the steps come from.
dashboardNo
recommendationsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.29
    • addedOutput schema / properties / dashboard
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "note": {
      +      "description": "One line naming what the page shows; the same text is in summary where a reply has one.",
      +      "type": "string"
      +    },
      +    "url": {
      +      "description": "The member's own dashboard page.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "url",
      +    "note"
      +  ],
      +  "type": "object"
      +}
  2. Changed8 schema fields changedv1.0.26
    • addedOutput schema / properties / recommendations / items / properties / evidence
      Added value: +{
      +  "additionalProperties": {},
      +  "type": "object"
      +}
    • addedOutput schema / properties / recommendations / items / properties / fix_id
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / recommendations / items / properties / id
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / recommendations / items / properties / locked
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / recommendations / items / properties / rank
      Added value: +{
      +  "type": "number"
      +}
    • addedOutput schema / properties / recommendations / items / properties / source
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / run_id
      Added value: +{
      +  "description": "The audit the steps come from.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / tier
      Added value: +{
      +  "description": "Which list the API served. \"free\" omits where to get listed, what the assistants get wrong and each finding's fix file; its step marked `locked` only counts what Pro shows.",
      +  "enum": [
      +    "free",
      +    "pro"
      +  ],
      +  "type": "string"
      +}
  3. Changed1 schema field changedv1.0.23
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "recommendations": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "action": {
      +            "type": "string"
      +          },
      +          "effort": {
      +            "type": "string"
      +          },
      +          "expected_impact": {
      +            "type": "string"
      +          },
      +          "why": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "recommendations"
      +  ],
      +  "type": "object"
      +}
  4. First observedv1.0.6

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnly/destructive annotations, it discloses that results are derived from the domain's latest audit, that each action cites evidence (blocked crawlers, missing structured data, cited competitors), the API-key portability, the audit-on-record prerequisite, and the Pro vs non-Pro behavioral split. That tier gating materially changes what the agent will see and is not recoverable from any structured field.

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 front-loaded: purpose, then trigger phrases, then return shape, then prerequisites and tiering. The quoted user utterances and the long Pro clause are slightly verbose, but each sentence carries operational information rather than restating 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?

With an output schema present, the return-value explanation is bonus rather than required, and prerequisites and tier effects are well covered. The remaining gap is relational: among 21 siblings that include list_fixes, get_fix, and get_gtm_plan, the description never says when those are the better call.

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?

There is a single required parameter with 100% schema description coverage ('The website domain, e.g. \"example.com\"'), so the schema already carries the semantics. The description only implies the domain must have a prior audit, adding a constraint rather than new meaning for the parameter itself.

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 states a specific verb and resource ('Get specific, prioritized fixes') and scopes the outcome ('raise a website's AI visibility and audit scores'), plus it characterizes the return as 'ranked actions with expected impact'. It does not name which sibling it replaces (list_fixes, get_fix, get_gtm_plan all sit nearby), so an agent still has to infer the boundary.

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?

It gives concrete triggering phrasing ('how do I fix this,' 'what should I change') and a timing condition ('after an audit surfaces issues'), and it states the prerequisite that an audit must be on record. It stops short of explicit when-not guidance or naming the alternative tool for a bare fix listing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.