Skip to main content
Glama

Lordevo Shop (x402 website checks)

SEO audit, one page: top 10 issues with fixes (LITE) ($0.002/call)

seo_audit_lite
Read-onlyIdempotent

$0.002 per call (x402, USDC on Base; free trial: add "trial": true or use try_free). [SEO, security and site verdicts] SEO audit of one page (on-page SEO check with fixes). LITE version of the $2 SEO Audit: one page, the top 10 issues ranked by severity and effort with why/fix, plus up to 12 internal links checked for 404s, mixed content, headings, structured data, Open Graph, robots.txt/sitemap/llms.txt. ~5-15 s. Upgrade: full 10-page SEO Audit ($2).

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": {
      "url": "<url>"
    },
    "name": "seo_audit_lite"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYesPage to audit: a public http(s) URL or bare domain, e.g. https://example.com
trialNoOptional. true = free if a trial call is left (3 per IP per UTC day), else the payment terms.

Output Schema

NameRequiredDescriptionDefault
urlNo
tierNo
toolNo
cacheNo
scoreNo
_trialNoPresent when the call was a free trial call.
countsNo
upsellNo
providerNo
price_usdNo
top_issuesNo
issues_foundNo
links_checkedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / trial / description
      Previous value: -"Optional. true = answer free if a trial call is left (3 per IP per UTC day); otherwise you get the payment terms."New value: +"Optional. true = free if a trial call is left (3 per IP per UTC day), else the payment terms."
  2. Changed1 schema field changed
    • changedInput schema / properties / url / description
      Previous value: -"Public http(s) URL or bare domain, e.g. https://example.com"New value: +"Page to audit: a public http(s) URL or bare domain, e.g. https://example.com"
  3. Changed2 schema fields changed
    • addedInput schema / properties / trial
      Added value: +{
      +  "description": "Optional. true = answer free if a trial call is left (3 per IP per UTC day); otherwise you get the payment terms.",
      +  "type": "boolean"
      +}
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "anyOf": [
      +    {
      +      "required": [
      +        "tool",
      +        "url"
      +      ]
      +    },
      +    {
      +      "properties": {
      +        "accepts": {
      +          "type": "array"
      +        },
      +        "error": {
      +          "type": "string"
      +        },
      +        "resource": {
      +          "type": "object"
      +        },
      +        "x402Version": {
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "x402Version",
      +        "accepts"
      +      ]
      +    },
      +    {
      +      "properties": {
      +        "charged": {
      +          "type": "boolean"
      +        },
      +        "error": {
      +          "type": "string"
      +        },
      +        "message": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "error"
      +      ]
      +    }
      +  ],
      +  "properties": {
      +    "_trial": {
      +      "description": "Present when the call was a free trial call.",
      +      "type": "object"
      +    },
      +    "cache": {
      +      "type": "object"
      +    },
      +    "counts": {
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "issues_found": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "links_checked": {
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    },
      +    "price_usd": {
      +      "type": "number"
      +    },
      +    "provider": {
      +      "type": "string"
      +    },
      +    "score": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "tier": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "tool": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "top_issues": {
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    },
      +    "upsell": {
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "url": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  4. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already carry the safety profile (readOnly, idempotent, non-destructive, open world), but the description adds genuinely non-structured context: price per call, x402/USDC-on-Base payment mechanics, free-trial quota (3 per IP per UTC day), and expected latency of ~5-15 s. That covers cost and auth expectations well; only the absence of an explicit statement about what happens when payment fails or the trial is exhausted holds it at 4.

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?

Pricing is front-loaded, then scope, then the coverage list, then the upgrade pointer – a logical order. It is somewhat dense, with price repeated from the title and a bracketed tag ("[SEO, security and site verdicts]") that does little work in the description body.

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 paid, open-world single-page audit, the description covers cost, trial mechanics, runtime, the exact checklist of what is inspected, and the upgrade path. An output schema exists, so return structure need not be explained, and nothing an agent needs to decide-and-call is missing.

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 both parameters are already documented in the input schema. The description restates the trial flag's behavior and the one-page scope, adding little beyond what the schema provides; baseline 3 applies.

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 specific verb and resource ("SEO audit of one page (on-page SEO check with fixes)") and scopes the deliverable precisely: top 10 issues ranked by severity and effort with why/fix, plus up to 12 internal link checks. It distinguishes itself clearly from the paid 10-page audit, but gives no signal to separate it from near-neighbor siblings like seo_page, page_quality, or site_verdict.

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?

Usage context is clear: single-page on-page audit, cheap entry tier, with an explicit upgrade path to the full 10-page SEO Audit ($2) and a free-trial route via the trial parameter or try_free. It stops short of saying when a sibling such as seo_page or site_verdict would be the better choice.

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