Web Validator by DigestSEO
Server Details
Validate HTML and CSS, audit SEO and JSON-LD, and check user-authorized public links.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.9/5 across 6 of 6 tools scored.
Tools are mostly distinct, but `generate_validation_report` overlaps with `audit_seo_metadata`, `validate_css`, `validate_html`, and `validate_schema_markup` by combining their functions. This creates redundancy and potential confusion for an agent choosing between a specific tool and a combined report.
All tool names follow a consistent `verb_noun` pattern with underscores: `audit_seo_metadata`, `check_broken_links`, `generate_validation_report`, `validate_css`, `validate_html`, `validate_schema_markup`. The naming is predictable and clear.
With six tools, the server is well-scoped for a web validation service. Each tool covers a distinct aspect of validation (HTML, CSS, SEO, broken links, JSON-LD, combined report) without being overly numerous or sparse.
The tool set covers key validation areas: HTML, CSS, SEO metadata, broken links, and JSON-LD. However, it lacks accessibility checks (e.g., ARIA) and performance validation, which are common in comprehensive web validators.
Available Tools
6 toolsaudit_seo_metadataAudit SEO metadataARead-onlyInspect
Analyzes supplied HTML locally for title, description, canonical, viewport, heading, image-alt, and Open Graph issues.
| Name | Required | Description | Default |
|---|---|---|---|
| html | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| issues | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds that the analysis is 'local', which implies no external network calls, but doesn't expand on other behaviors like performance implications or error handling. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states what the tool does without any extra words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input (one required string), existing annotations, and the presence of an output schema, the description is mostly complete. It lists the specific SEO issues checked, which is sufficient for a tool of this complexity. The only gap is the lack of parameter description, but the tool's purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, meaning the parameter 'html' has no description in the schema. The tool description says 'supplied HTML locally', which adds minimal context about what the parameter is, but it doesn't mention required format, size limits (though schema has maxLength), or examples. With only one parameter, the description should compensate more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes HTML locally for specific SEO elements (title, description, canonical, viewport, heading, image-alt, Open Graph). It distinguishes itself from sibling tools like validate_html or check_broken_links by its specific focus on SEO metadata.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you have HTML to check SEO metadata, but it gives no explicit guidance on when not to use it or how it compares to siblings like validate_schema_markup or check_broken_links. Context is clear but exclusions are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_broken_linksCheck public linksAInspect
Checks up to 25 public HTTP(S) links found in supplied HTML. It does not follow redirects or fetch response bodies. Use only URLs you are authorized to inspect.
| Name | Required | Description | Default |
|---|---|---|---|
| html | Yes | ||
| base_url | No | ||
| max_links | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| links | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: maximum 25 links, no redirect following, no body fetching, and requires authorization. This adds significant context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and constraints, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description sufficiently covers purpose, constraints, and behavioral details for a tool with 3 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description only implicitly mentions the link limit (related to max_links) but does not explain html, base_url, or max_links. Parameter names are self-explanatory, but description could add more detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks HTTP(S) links found in HTML, up to 25 links, and specifies it does not follow redirects or fetch bodies. This distinguishes it from sibling tools like validate_html.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use only authorized URLs and mentions the tool does not follow redirects. However, it does not explicitly compare to siblings or state when to prefer this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_validation_reportGenerate validation reportAInspect
Combines W3C Nu HTML validation with local CSS, SEO, and JSON-LD checks for supplied markup. Optionally checks public links when the user has authorized those requests.
| Name | Required | Description | Default |
|---|---|---|---|
| css | No | ||
| html | Yes | ||
| base_url | No | ||
| max_links | No | ||
| check_links | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| css_errors | Yes | |
| seo_issues | Yes | |
| html_errors | Yes | |
| broken_links | Yes | |
| links_checked | Yes | |
| schema_issues | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by mentioning that link checking is optional and requires user authorization. This aligns with the openWorldHint annotation and provides useful transparency about external interactions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the core functionality. It avoids fluff but could be slightly more structured for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, combined checks) and the presence of an output schema, the description adequately covers the main functionality but lacks details on parameter usage and return structure, making it minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, the description should compensate but only hints at 'html' and 'css' and 'check_links'. It does not explain 'base_url', 'max_links', or parameter constraints, leaving agents to guess their meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a validation report combining multiple checks (HTML, CSS, SEO, JSON-LD) and optionally checks links. This distinguishes it from sibling tools that perform individual checks, making the purpose specific and distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (comprehensive report) but does not explicitly state when not to use or mention alternative tools for single checks. Guidance is present but implicit, leaving the agent to infer from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_cssValidate CSSARead-onlyInspect
Parses supplied CSS locally and returns syntax messages without contacting an external service.
| Name | Required | Description | Default |
|---|---|---|---|
| css | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| errors | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false. The description adds that validation happens locally without an external service, which is valuable for privacy and latency context. However, no mention of output format or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence (10 words) that front-loads the action and key details. No redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with annotations and an output schema, the description captures core behavior (local CSS validation) but omits details like response structure or edge cases. Still fairly complete given low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'css' has no description in the schema (0% coverage) and the tool description adds no additional meaning beyond 'supplied CSS'. It does not explain constraints like maxLength or expected format (e.g., CSS version).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it parses CSS locally and returns syntax messages, distinguishing it from sibling tools like validate_html or audit_seo_metadata. The verb 'Parse' and resource 'CSS' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for CSS validation but does not explicitly state when to use this tool over alternatives like audit_seo_metadata or check_broken_links. No when-to-use or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_htmlValidate HTMLAInspect
Sends supplied HTML markup to the W3C Nu HTML Checker and returns validation messages. Use only markup you are authorized to share.
| Name | Required | Description | Default |
|---|---|---|---|
| html | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| errors | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description transparently states that HTML is sent to an external service and returns messages, aligning with annotations (readOnlyHint=false, destructiveHint=false). It adds value beyond annotations by noting the authorization requirement, but does not detail potential rate limits or the service's data handling policies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the core function and a critical usage note. No redundant information; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, output schema provided), the description covers the primary action and an important authorization policy. It lacks examples or mention of external processing implications, but remains adequate for a straightforward validation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate. It merely restates the parameter's role as 'supplied HTML markup' without adding constraints, expected formats, or examples. The one parameter (html) is barely elaborated beyond the schema's own type and length restrictions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool sends HTML to the W3C Nu HTML Checker and returns validation messages, with a specific verb ('sends') and resource ('HTML markup', 'W3C Nu HTML Checker'). It effectively distinguishes from sibling validation tools like validate_css or check_broken_links by specifying the exact service used.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only provides an authorization constraint ('Use only markup you are authorized to share') but offers no guidance on when to use this tool versus its siblings (e.g., validate_css, check_broken_links). No use cases, prerequisites, or exclusions are mentioned, leaving the agent without comparative context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_schema_markupValidate JSON-LD schemaARead-onlyInspect
Parses JSON-LD blocks in supplied HTML and reports JSON syntax problems without contacting external services.
| Name | Required | Description | Default |
|---|---|---|---|
| html | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| issues | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is safe and read-only. The description adds valuable behavioral context by clarifying that no external services are contacted, which is beyond the annotations, and implies local processing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 14 words, front-loaded with the key action. Every word adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema and is relatively simple, the description covers the core functionality adequately. It explains what the tool does (parse and report JSON-LD errors) and states it works offline. However, it could provide more guidance on input format expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the 'html' parameter beyond the schema definition. The description mentions parsing JSON-LD blocks but does not add syntax or format guidance for the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb (parses/reports), resource (JSON-LD blocks in HTML), and purpose (syntax problem reporting). It distinguishes this tool from sibling tools like validate_html or check_broken_links by specifying JSON-LD validation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description indicates the tool works offline ('without contacting external services'), providing context for when to use it. However, it does not explicitly state when to use this tool over alternatives, nor does it provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!