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 4.1/5 across 6 of 6 tools scored.
Each tool has a clearly distinct purpose: SEO analysis, link checking, combined report, CSS validation, HTML validation, and schema markup validation. No two tools overlap in functionality.
All tool names follow a consistent verb_noun pattern in snake_case, using verbs like audit, check, generate, and validate. The naming is predictable and uniform.
With 6 tools, the server is well-scoped for web validation. Each tool serves a distinct aspect of validation without being excessive or insufficient.
The tool set covers core web validation areas: HTML, CSS, SEO, links, and schema markup. A minor gap is the absence of accessibility or performance checks, but the scope is still comprehensive.
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 declare readOnlyHint=true, so the description adds value by specifying the analysis is done 'locally' and listing the specific checks performed. This provides behavioral context beyond annotations without contradiction.
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, well-structured sentence that front-loads the verb 'Analyzes' and efficiently lists all key checks. No extraneous 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 annotations and an output schema, the description adequately covers the tool's purpose, scope, and behavior. It specifies local execution and enumerates the SEO metadata aspects analyzed, making it complete for the agent.
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% for the 'html' parameter; the description only says 'supplied HTML', which is nearly redundant with the parameter name. No additional details on expected format, encoding, or required elements are given, leaving the agent with little guidance beyond length constraints in schema.
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 analyzes HTML for specific SEO metadata issues, listing title, description, canonical, viewport, headings, image-alt, and Open Graph. This distinct verb+resource+scope differentiates it from sibling tools like validate_html or check_broken_links.
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 SEO metadata auditing, but does not explicitly state when to use vs. alternatives or provide exclusions. Context from sibling tools makes the intended use clear, but lacks explicit guidance.
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?
The description adds significant behavioral context beyond annotations: it makes external requests (consistent with openWorldHint), does not follow redirects or fetch bodies, and requires authorization. No contradictions with 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?
Three sentences, front-loaded with the main function, followed by limitations and authorization note. Every sentence adds value; no unnecessary 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?
While the description covers core functionality and constraints, it lacks details on output schema, error handling, or timeout behavior. Given that an output schema exists, more context on return values would improve completeness.
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%, but the description does not fully compensate. It implies the 'html' parameter is the HTML content and mentions the 'max_links' limit, but does not describe 'base_url' or provide detailed format requirements.
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 up to 25 public HTTP(S) links found in supplied HTML, with specific constraints (no redirects, no fetch bodies). It distinguishes from sibling validation tools by focusing on link checking.
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 includes a usage guideline ('Use only URLs you are authorized to inspect') and behavioral limitations, but does not explicitly state when to use this tool versus alternatives or when not to use it.
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?
Annotations provide some behavioral hints (readOnlyHint false, openWorldHint true, destructiveHint false). The description adds that link checking requires authorization, which is a behavioral trait. However, it does not disclose potential rate limits, external service dependencies, or output size constraints.
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 the core function, second sentence adding optional behavior. No wasted words, clear 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 5 parameters and an output schema exists, the description is adequate but minimal. It covers the main purpose but does not detail the combined nature of the report or constrain usage for complex scenarios. Could benefit from a note that it aggregates all checks into one report.
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 description coverage, the description partially explains parameters: 'supplied markup' for html, 'local CSS' for css, and optional link checking for check_links. However, base_url and max_links are not elaborated, leaving some parameters unclear.
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 combines W3C Nu HTML validation with local CSS, SEO, and JSON-LD checks. This distinguishes it from sibling tools that focus on individual aspects (e.g., validate_css, 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?
The description mentions optional link checking with user authorization, but does not explicitly guide when to use this tool versus siblings. It implies comprehensive validation use cases but lacks concrete when-not or alternative references.
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 already indicate read-only and non-destructive behavior. The description adds valuable context by specifying local parsing and that no external service is contacted.
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, well-structured sentence that conveys all necessary information without extraneous 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 tool's simplicity (1 param, simple output), the description is sufficient. The existence of an output schema likely fills in return details.
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 input schema has 0% schema_description_coverage, so the description should compensate. It only states 'supplied CSS' which does not add meaningful detail beyond the schema's type and constraints.
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 action ('parses', 'returns') and the resource ('CSS'), and distinguishes it from sibling tools like validate_html by specifying it is for CSS only.
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 and highlights the local, offline nature. However, it does not explicitly state when not to use this tool or suggest alternatives.
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?
Discloses that it sends markup to an external service (W3C Nu HTML Checker) and mentions authorization, adding context beyond annotations. No contradictions.
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 the core action, no extraneous 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 covers purpose, usage guideline (authorization), and external service interaction, leaving no critical gaps for a simple one-parameter 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?
With 0% schema description coverage, the description clarifies that the string parameter is HTML markup, adding meaning beyond the schema's type and length constraints.
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?
Clearly states the tool sends HTML to the W3C Nu HTML Checker and returns validation messages, distinguishing it from siblings like validate_css or validate_schema_markup.
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?
Provides a usage guideline ('only markup you are authorized to share') but lacks explicit comparison to siblings or when not to use this tool.
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 declare readOnlyHint=true and destructiveHint=false. The description adds context on local-only operation and focus on JSON-LD blocks, but doesn't detail what constitutes a syntax problem.
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, 15 words, immediately conveys purpose without filler. 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 one simple parameter and an output schema, the description adequately covers input and output. Minor gap: doesn't mention that only JSON syntax within JSON-LD is validated, not HTML structure.
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 description coverage, the description adds meaning by specifying that the 'html' parameter should contain HTML with JSON-LD blocks. Could be more explicit, but it compensates well.
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 verb 'parses' and 'reports', the resource 'JSON-LD blocks in supplied HTML', and the outcome 'JSON syntax problems'. This distinguishes it from siblings like validate_html or validate_css.
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 local validation by noting 'without contacting external services', but lacks explicit when-to-use or when-not-to-use guidance compared to alternatives.
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!