SEO audit of a page: title, meta, headings, links and issues
On-page SEO audit of one URL: title and meta description with their lengths, canonical, meta robots, H1s and H2 count, images without alt text, lang and viewport, Open Graph and Twitter card tags, JSON-LD blocks, internal and external link counts and word count, plus a list of issues and a 0-100 score. Reads the server's HTML (no JavaScript), up to 1 MB. Use to check a page before publishing or to compare competitors.
Inputs
| Name | Type | Description |
|---|---|---|
url (required) | string | Absolute http(s) URL of the page |
Request
Over HTTP, with a card key from /credits:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/seo/audit?url=https%3A%2F%2Fwww.wikipedia.org%2F"
Or one of your 25 free calls, no key:
curl "https://agent-data-tools.revmesh2074.workers.dev/seo/audit?url=https%3A%2F%2Fwww.wikipedia.org%2F&trial=1"
Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.
Example result
{
"url": "https://www.wikipedia.org/",
"finalUrl": "https://www.wikipedia.org/",
"status": 200,
"score": 64,
"issues": [
"no canonical link"
],
"title": "Wikipedia",
"titleLength": 9,
"description": "Wikipedia is a free online encyclopedia…",
"descriptionLength": 120,
"canonical": null,
"robots": null,
"h1": [
"Wikipedia The Free Encyclopedia"
],
"h2Count": 1,
"images": 2,
"imagesWithoutAlt": 0,
"lang": "en",
"viewport": true,
"openGraph": {
"title": null,
"description": null,
"image": null
},
"twitterCard": null,
"jsonLdBlocks": 0,
"links": {
"internal": 30,
"external": 300
},
"wordCount": 1500
}
From an AI agent (MCP)
Add the MCP server to Claude, Cursor or any MCP client. This tool is seo_audit, and the first 25 successful calls are free:
https://agent-data-tools.revmesh2074.workers.dev/mcp