Web Validator by DigestSEO
Audit public webpages and supplied markup for HTML, CSS, SEO, JSON-LD, and link issues.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp-web-validator": {
"command": "npx",
"args": [
"mcp-web-validator"
]
}
}
}Paquetes ejecutables
1.3.42stdioPuntos de conexión remotos
https://web-validator-mcp.digestseo.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (8)
🟢validate_html(html)
Use this when raw HTML markup is supplied. Sends that markup to the Nu HTML Checker hosted at validator.nu and returns validation messages. For a live URL, use audit_public_webpage.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw HTML markup supplied by the user; this is not a webpage URL."
}
},
"required": [
"html"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"message": {
"type": "string"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"type",
"message"
],
"additionalProperties": false
}
},
"total_messages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"messages",
"total_messages",
"truncated",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢validate_css(css)
Use this when raw CSS source is supplied. Parses it inside the Worker and returns syntax messages without contacting an external service.
Esquema de entrada
{
"type": "object",
"properties": {
"css": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw CSS source supplied by the user."
}
},
"required": [
"css"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"line": {
"type": "number"
},
"message": {
"type": "string"
},
"context": {
"type": "string"
}
},
"required": [
"line",
"message"
],
"additionalProperties": false
}
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"errors",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢audit_seo_metadata(html)
Use this for a focused SEO/accessibility-signal check of supplied HTML. It does not fetch a live webpage; use audit_public_webpage for a URL.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw HTML markup supplied by the user; this is not a webpage URL."
}
},
"required": [
"html"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"issues": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"total_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"issues",
"total_issues",
"truncated",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢validate_schema_markup(html)
Use this for a focused JSON-LD syntax check of supplied HTML. It parses JSON only and does not validate Schema.org vocabulary semantics.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw HTML markup supplied by the user; this is not a webpage URL."
}
},
"required": [
"html"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"issues": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"total_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
},
"blocks_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"issues",
"total_issues",
"truncated",
"overview",
"blocks_checked"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢check_broken_links(html, base_url, max_links)
Use this for a focused check of up to 20 public HTTP(S) links found in supplied HTML. It does not fetch base_url, follow redirects, or retain response bodies.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw HTML markup supplied by the user; this is not a webpage URL."
},
"base_url": {
"description": "Only resolves relative links; it does not fetch this webpage.",
"type": "string",
"format": "uri"
},
"max_links": {
"default": 15,
"description": "Maximum links to check, from 1 to 20.",
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"html"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"status": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"blocked",
"failed"
]
}
]
},
"ok": {
"type": "boolean"
},
"message": {
"type": "string"
}
},
"required": [
"url",
"status",
"ok"
],
"additionalProperties": false
}
},
"links_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"healthy_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"redirects": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"unreachable_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"links",
"links_checked",
"healthy_links",
"redirects",
"unreachable_links",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢generate_validation_report(html, css, check_links, base_url, max_links)
Use this when HTML markup is already supplied. Combines Nu HTML validation with local CSS, SEO, accessibility-signal, and JSON-LD syntax checks. It does not fetch a webpage from base_url; use audit_public_webpage for a live URL.
Esquema de entrada
{
"type": "object",
"properties": {
"html": {
"type": "string",
"minLength": 1,
"maxLength": 200000,
"description": "Raw HTML markup supplied by the user; this is not a webpage URL."
},
"css": {
"description": "Optional raw CSS source. Linked stylesheets are not fetched.",
"type": "string",
"maxLength": 200000
},
"check_links": {
"default": false,
"description": "Whether to contact eligible public links found in the supplied HTML.",
"type": "boolean"
},
"base_url": {
"description": "Only resolves relative links when check_links is true; it does not fetch this webpage.",
"type": "string",
"format": "uri"
},
"max_links": {
"default": 15,
"description": "Maximum links to check, from 1 to 20.",
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"html"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"html_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"css_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"seo_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"schema_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"links_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"broken_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_warnings": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_info": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"message": {
"type": "string"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"type",
"message"
],
"additionalProperties": false
}
},
"css_messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"line": {
"type": "number"
},
"message": {
"type": "string"
},
"context": {
"type": "string"
}
},
"required": [
"line",
"message"
],
"additionalProperties": false
}
},
"seo_findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"schema_findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"status": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"blocked",
"failed"
]
}
]
},
"ok": {
"type": "boolean"
},
"message": {
"type": "string"
}
},
"required": [
"url",
"status",
"ok"
],
"additionalProperties": false
}
},
"seo_truncated": {
"type": "boolean"
},
"schema_truncated": {
"type": "boolean"
},
"html_total_messages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_truncated": {
"type": "boolean"
},
"schema_blocks_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"healthy_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"redirects": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"unreachable_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"links_requested": {
"type": "boolean"
},
"css_checked": {
"type": "boolean"
},
"failed_checks": {
"type": "array",
"items": {
"type": "string",
"enum": [
"fetch",
"html",
"css",
"links"
]
}
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"html_errors",
"css_errors",
"seo_issues",
"schema_issues",
"links_checked",
"broken_links",
"html_warnings",
"html_info",
"html_messages",
"css_messages",
"seo_findings",
"schema_findings",
"links",
"seo_truncated",
"schema_truncated",
"html_total_messages",
"html_truncated",
"schema_blocks_checked",
"healthy_links",
"redirects",
"unreachable_links",
"links_requested",
"css_checked",
"failed_checks",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢audit_public_webpage(url, check_links, max_links)
Use this when the user provides one live public webpage URL. Fetches one bounded static HTML response, then runs HTML validation, SEO/accessibility-signal, and JSON-LD syntax checks. It checks links only when requested and does not crawl, execute JavaScript, authenticate, or fetch linked stylesheets. Use only URLs the user owns or is authorized to inspect.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri",
"description": "One authorized public HTTP(S) webpage URL; private pages, credentials, and custom ports are rejected."
},
"check_links": {
"default": false,
"description": "Whether to contact eligible public links found on the fetched page.",
"type": "boolean"
},
"max_links": {
"default": 15,
"description": "Maximum links to check, from 1 to 20.",
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"html_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"css_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"seo_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"schema_issues": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"links_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"broken_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_warnings": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_info": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"message": {
"type": "string"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"type",
"message"
],
"additionalProperties": false
}
},
"css_messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"line": {
"type": "number"
},
"message": {
"type": "string"
},
"context": {
"type": "string"
}
},
"required": [
"line",
"message"
],
"additionalProperties": false
}
},
"seo_findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"schema_findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"status": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"blocked",
"failed"
]
}
]
},
"ok": {
"type": "boolean"
},
"message": {
"type": "string"
}
},
"required": [
"url",
"status",
"ok"
],
"additionalProperties": false
}
},
"seo_truncated": {
"type": "boolean"
},
"schema_truncated": {
"type": "boolean"
},
"html_total_messages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_truncated": {
"type": "boolean"
},
"schema_blocks_checked": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"healthy_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"redirects": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"unreachable_links": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"links_requested": {
"type": "boolean"
},
"css_checked": {
"type": "boolean"
},
"failed_checks": {
"type": "array",
"items": {
"type": "string",
"enum": [
"fetch",
"html",
"css",
"links"
]
}
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
},
"requested_url": {
"type": "string"
},
"fetched_url": {
"type": "string"
},
"redirects_followed": {
"type": "integer",
"minimum": 0,
"maximum": 3
},
"http_status": {
"type": "integer",
"minimum": 200,
"maximum": 299
},
"content_type": {
"type": "string",
"const": "text/html"
},
"page_fetched": {
"type": "boolean"
}
},
"required": [
"html_errors",
"css_errors",
"seo_issues",
"schema_issues",
"links_checked",
"broken_links",
"html_warnings",
"html_info",
"html_messages",
"css_messages",
"seo_findings",
"schema_findings",
"links",
"seo_truncated",
"schema_truncated",
"html_total_messages",
"html_truncated",
"schema_blocks_checked",
"healthy_links",
"redirects",
"unreachable_links",
"links_requested",
"css_checked",
"failed_checks",
"overview",
"page_fetched"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢audit_public_site(site_url, max_pages, page_offset)
Use this for a bounded, sitemap-first audit of a public website the user owns or is authorized to inspect. It fetches at most 8 same-origin HTML pages per call, respects robots.txt, and returns compact page summaries plus deduplicated findings. It does not recursively follow HTML links, authenticate, execute JavaScript, fetch assets, or run site-wide link checks. Use page_offset to continue when more sitemap pages remain.
Esquema de entrada
{
"type": "object",
"properties": {
"site_url": {
"type": "string",
"maxLength": 2048,
"format": "uri",
"description": "Authorized public website URL. The final public origin becomes the crawl boundary."
},
"max_pages": {
"default": 5,
"description": "Maximum same-origin pages to audit in this call, from 1 to 8.",
"type": "integer",
"minimum": 1,
"maximum": 8
},
"page_offset": {
"default": 0,
"description": "Zero-based sitemap-page offset for continuing a capped audit batch.",
"type": "integer",
"minimum": 0,
"maximum": 250
}
},
"required": [
"site_url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"site_url": {
"type": "string"
},
"sitemap_url": {
"type": "string"
},
"discovery": {
"type": "string",
"enum": [
"sitemap",
"root_only",
"partial"
]
},
"discovery_error": {
"type": "string",
"enum": [
"robots_unavailable",
"sitemap_unavailable",
"sitemap_invalid"
]
},
"pages_discovered": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pages_selected": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pages_audited": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pages_partial": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pages_failed": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"pages_skipped_robots": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"next_page_offset": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"audit_health_score": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"score_coverage_percent": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"pages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"fetched_url": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"skipped"
]
},
"http_status": {
"type": "integer",
"minimum": 200,
"maximum": 299
},
"redirects_followed": {
"type": "integer",
"minimum": 0,
"maximum": 3
},
"page_fetched": {
"type": "boolean"
},
"html_validation_status": {
"type": "string",
"enum": [
"completed",
"timeout",
"unavailable",
"not_run"
]
},
"html_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"html_warnings": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"seo_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"seo_warnings": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"schema_errors": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"schema_warnings": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"notes": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"health_score": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"failure_code": {
"type": "string"
},
"top_findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"HTML",
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
}
},
"required": [
"severity",
"category",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"url",
"status",
"page_fetched",
"html_validation_status",
"html_errors",
"html_warnings",
"seo_errors",
"seo_warnings",
"schema_errors",
"schema_warnings",
"notes",
"top_findings"
],
"additionalProperties": false
}
},
"issue_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"enum": [
"error",
"warning",
"info"
]
},
"category": {
"type": "string",
"enum": [
"HTML",
"SEO",
"Schema",
"Accessibility"
]
},
"message": {
"type": "string"
},
"affected_pages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"example_urls": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"severity",
"category",
"message",
"affected_pages",
"example_urls"
],
"additionalProperties": false
}
},
"issue_groups_truncated": {
"type": "boolean"
},
"overview": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"html",
"css",
"seo",
"schema",
"links",
"report",
"site"
]
},
"status": {
"type": "string",
"enum": [
"passed",
"needs_attention",
"partial",
"failed",
"not_applicable"
]
},
"title": {
"type": "string"
},
"headline": {
"type": "string"
},
"detail": {
"type": "string"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"shown": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"truncated": {
"type": "boolean"
},
"counts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"tone": {
"type": "string",
"enum": [
"error",
"warning",
"info",
"success"
]
}
},
"required": [
"key",
"label",
"value",
"tone"
],
"additionalProperties": false
}
},
"next_action": {
"type": "string"
}
},
"required": [
"kind",
"status",
"title",
"headline",
"detail",
"total",
"shown",
"truncated",
"counts"
],
"additionalProperties": false
},
"error": {
"type": "string"
}
},
"required": [
"site_url",
"discovery",
"pages_discovered",
"pages_selected",
"pages_audited",
"pages_partial",
"pages_failed",
"pages_skipped_robots",
"truncated",
"score_coverage_percent",
"pages",
"issue_groups",
"issue_groups_truncated",
"overview"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Comunidad
Evidencia