Skip to main content
Glama

SEO Audit

Audit a site for SEO problems

audit_site
Read-onlyIdempotent

Use this to audit a whole site or several pages for SEO; it finds the pages itself. It fits requests such as "audit example.com", "what SEO problems does my site have?", "which pages are worst?", "take a quick look at a few pages of this site" or "my site has a page per city, are they too similar?", so never guess page addresses for those. Pass the domain and optionally max_pages (1 to 25, default 10). Reads the homepage, the sitemap and linked pages of that site only, respecting robots.txt, and returns the rules that failed grouped by priority (high, medium, low), each with the affected pages, the fix and the documentation link. It also compares the pages it read: near-identical templated pages, pages with little text of their own, hreflang links that are not returned or lack x-default, and sitemap pages nothing links to. Leave judge off unless the user asks what pages are for or which compete. It reads a sample of pages, does not run JavaScript, and does not measure rankings, traffic or backlinks. Do not use it for private or local addresses or to collect a site's content.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
judgeNoAlso ask the judgement service what the page is for, how specific it is and whether pages compete for the same searches. Off by default. It is limited per day, and when unavailable the rule results are returned with a note.
domainYesA public website, for example example.com or https://example.com. Only the site's own pages are read, starting from its homepage and sitemap.
max_pagesNoMost pages to read, 1 to 25. Default 10.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
notesYes
domainYes
noticeYes
refusedNo
summaryNo
finalUrlNo
findingsYes
judgementNo
reachableYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive/openWorld, but the description goes well beyond them: it discloses the crawl source (homepage + sitemap + linked pages), robots.txt compliance, sampled (not full) coverage, no JavaScript execution, no rankings/traffic/backlinks, and the prioritised output shape. This is unusually rich behavioural disclosure.

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 purpose and differentiator, then usage, then behaviour and exclusions; each sentence carries information. It is long and the 'Do not use it for private or local addresses' clause slightly overlaps the earlier 'never guess page addresses', but no sentence is filler.

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 3-parameter open-world crawl tool with an output schema, the description covers trigger conditions, crawl scope, limits, degradation behaviour, and explicit out-of-scope items. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning: max_pages default 10, judge is off by default and rate-limited per day with graceful degradation when unavailable. It reinforces rather than merely repeats the schema text.

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+scope ('audit a whole site or several pages for SEO') and immediately adds the differentiator 'it finds the pages itself', which separates it from the sibling audit_page. An agent can route site-wide vs single-page audits without opening either 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?

Gives explicit when-to-use via realistic user utterances ('audit example.com', 'which pages are worst?') plus 'never guess page addresses for those', and states when-not ('private or local addresses', collecting content). It does not name audit_page as the alternative for single-page audits, so the routing is implied rather than explicit.

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