Skip to main content
Glama

Server Details

Kilotest leverages 12 rule engines to test web pages for front-end quality (accessibility, usability, and standards conformity) and report results with specifiable granularity.

Ownership verified
Status
Healthy
Uptime
100.0% over 35 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.5/5.0

Scored across 12 tools

Disambiguation3/5

Most tools map to distinct levels of the report hierarchy (report, issue, violator, diagnosis), but orderNewTest/requestNewTest and orderRetest/requestRetest overlap in purpose and differ mainly by approval timing, which is easy for an agent to miss. The descriptions do help clarify the distinction, keeping this from being worse.

Naming Consistency5/5

All tool names use camelCase and follow a consistent verb+noun pattern such as getReport, listIssues, orderNewTest, and requestRetest. There are no mixed conventions or chaotic naming choices.

Tool Count4/5

Twelve tools is reasonable for a service that exposes report hierarchy navigation plus test ordering, requesting, awaiting, and feature requests. There is slight redundancy from the order/request pairs, but the count is not excessive.

Completeness4/5

The surface covers the core lifecycle: overview, listing and getting reports, drilling into issues, violators, and diagnoses, and ordering or requesting tests. Minor gaps remain, such as cancelling or deleting a report/job and direct lookup by ID, but agents can work around them.

Available Tools

12 tools
awaitTestA
Read-only
Inspect

Wait for a job ordered via the orderNewTest or orderRetest tool to complete, using the report identifier either tool returned. Blocks until the report is ready, the job fails, or a maximum wait time elapses; sends no interim notices. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the ordered job, from the report identifier returned by orderNewTest (example: x9z)
timeStampYesTimestamp of the ordered job, from the report identifier returned by orderNewTest, in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnly, idempotent=false, destructive=false, openWorld=false), and the description adds real behavioral context: it blocks, sends no interim notices, and exits on completion, failure, or timeout. It stops short of saying what the caller observes on timeout/failure or what the maximum wait is.

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?

Two sentences, front-loaded with the action and blocking behavior before the domain gloss on Kilotest. Efficient, though the trailing results-hierarchy sentence is background rather than invocation guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation, and the input source is documented. The remaining gap is timeout/failure semantics -- what an agent should expect or do when the max wait elapses -- which matters for a blocking call.

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

Parameters3/5

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

Schema description coverage is 100% and both field descriptions already state they come from the report identifier returned by orderNewTest. The description's 'using the report identifier either tool returned' largely restates that, adding little beyond format examples already in the schema.

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 and resource -- wait for an ordered job to complete -- and names the sibling tools that produce its input (orderNewTest / orderRetest). An agent can distinguish it from getReport or listReports without opening any 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?

Clearly states the trigger condition (a job previously ordered via orderNewTest or orderRetest) and that it blocks. It does not explicitly name an alternative for a report that is already finished (e.g. getReport), so the when-not-to-use case is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

getKilotestOverviewA
Read-onlyIdempotent
Inspect

Explain what Kilotest is, what its tools do, and how its results are structured. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare the tool is read-only, idempotent, non-destructive, and closed-world. The description adds valuable domain context by explaining the front-end quality focus and the report → issue → violator element → diagnosis hierarchy, though it does not describe the concrete return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences with zero waste. The purpose is front-loaded in the first sentence, and the second sentence supplies only the domain context and result structure needed to orient an agent.

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 zero-parameter overview tool with no output schema and rich safety annotations, the description provides everything necessary: what Kilotest tests, what the overview covers, and how results are organized. Additional detail would be redundant or better served by the specific sibling tools.

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?

The tool takes zero parameters, so there are no parameter semantics to document. The baseline for a parameterless tool is 4, and the description does not need to add anything further about inputs.

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?

The description states a specific verb (explain) and resource (Kilotest, its tools, and result structure). It clearly differentiates this overview tool from siblings like getReport and listIssues, which retrieve specific data rather than provide orientation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: this is an orientation tool for understanding Kilotest before using the more specific listing and request tools. However, the description does not explicitly say when to call it instead of a sibling, nor does it name any alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

getReportA
Read-onlyIdempotent
Inspect

Get one full report in JSON. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the report (example: x9z)
timeStampYesTimestamp of the report in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds value beyond that by disclosing the result hierarchy (report → issue → violator element → diagnosis), which helps the agent understand the payload shape. It stops short of mentioning size limits or pagination for large reports.

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?

Two sentences, front-loaded with the action and format ('Get one full report in JSON'). The follow-up sentence earns its place by explaining the domain and result structure rather than padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only two required scalar parameters and an output schema present, the description need not explain return values further; the domain context and result hierarchy it supplies are already more than required. The only minor gap is the absence of guidance on locating the jobID/timeStamp or what happens if a report does not exist.

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

Parameters3/5

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

Schema coverage is 100% and both parameters carry descriptions with concrete format examples (jobID 'x9z', timeStamp '260503T0432'), so the schema does the heavy lifting. The description adds no additional parameter meaning, which is the correct baseline for full coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get one full report in JSON') and clarifies the scope as a single report rather than a list, which implicitly separates it from listReports. It does not name a sibling directly, but the singular 'one full report' is clear enough to act on.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'one full report' implies retrieval of a specific report versus a listing, but there is no explicit when-to-use, no prerequisites (e.g., a prior test must exist), and no named alternative such as listReports or getKilotestOverview. Usage must be inferred from the singular framing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listDiagnosesB
Read-onlyIdempotent
Inspect

Provide details about one element reported as exhibiting one issue in one report, including the diagnoses provided by rule engines about how the element exhibited the issue. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the report (example: x9z)
issueIDYesIssue identifier (example: contrastPoor)
timeStampYesTimestamp of the report in YYMMDDTHHmm format (example: 260503T0432)
catalogIndexYesIdentifier of the issue-exhibiting element in the catalog of elements on the page (example: 372)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds scope context (single element, single issue, single report) but discloses nothing about pagination, rate limits, or error behavior that annotations don't already signal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose, but the first sentence is wordy ('one element reported as exhibiting one issue in one report') and the second sentence restates the domain model at length. Every sentence is relevant but not tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a 100% covered schema, an output schema present, and rich annotations, the description's domain context (Kilotest, the report/issue/violator/diagnosis hierarchy) completes the picture for correct invocation. Return values need not be explained given the output schema.

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

Parameters3/5

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

Schema description coverage is 100% with examples for all four parameters, so the schema fully documents inputs. The description's hierarchy sentence loosely maps parameters to report/issue/element levels but adds no format or syntax detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: retrieving diagnoses for one element exhibiting one issue in one report. It distinguishes itself within the report>issue>violator>diagnosis hierarchy implied by siblings listReports/listIssues/listViolators. However, the name 'listDiagnoses' suggests a collection while the description emphasizes a single element, a minor mismatch.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance, but the hierarchy sentence ('results are organized as report, then issue, then violator element, then diagnosis') implies the prerequisite chain an agent must navigate. No alternatives are named and no exclusions given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listIssuesB
Read-onlyIdempotent
Inspect

Provide details about one report, including basics about the issues reported in it. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the report (example: x9z)
timeStampYesTimestamp of the report in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so safety is covered. The description adds genuine domain context (Kilotest tests front-end quality; results nest report→issue→violator→diagnosis), but says nothing about volume, pagination, or what 'basics' omits.

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?

Two sentences, front-loaded with the action and followed by compact framing context. The second sentence is arguably broader than needed for this one tool, but it is not filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the hierarchy sentence supplies the missing mental model for a tool in a nested resource family. What remains missing is call ordering relative to listReports, which is a minor gap.

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

Parameters3/5

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

Schema description coverage is 100% and both required parameters (jobID, timeStamp) carry format and example documentation. The description adds no parameter-level meaning beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description says it provides details about one report 'including basics about the issues reported in it', which is close to the name listIssues but frames the tool as a report-detail getter. An agent cannot easily tell whether this or getReport returns the report itself, and no sibling is named to distinguish them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus getReport, listReports, listViolators, or listDiagnoses, nor any prerequisites such as needing a jobID/timestamp pair from listReports. The hierarchy sentence implies position in a drill-down but never tells the agent to call this at that step.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listReportsA
Read-onlyIdempotent
Inspect

Provide basics about all available reports. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is fully covered. The description adds useful context about the domain (Kilotest front-end quality testing) and the report→issue→violator→diagnosis hierarchy, which helps an agent interpret the data model. It does not disclose pagination, limits, or auth requirements.

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?

Two compact sentences with the action front-loaded and the domain/hierarchy context following. No filler, though the second sentence borders on background rather than operational guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. For a zero-parameter read-only list tool with full annotation coverage, the description is essentially complete; only explicit sibling differentiation and usage routing are 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?

The tool takes zero parameters, so the baseline of 4 applies. The description correctly implies a no-argument call returning all reports, consistent with the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Provide basics about all available reports.' Combined with the domain explanation of what Kilotest does, an agent can tell this is the enumeration tool. However, it does not explicitly distinguish itself from the getReport sibling, which presumably retrieves a single report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: an agent infers this is for listing all reports rather than fetching a specific one. No explicit when-to-use, when-not-to-use, or named alternative (e.g., getReport for a single report) is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listViolatorsC
Read-onlyIdempotent
Inspect

Provide details about one issue in one report, including basics about the elements of the tested page that were reported as exhibiting the issue. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the report (example: x9z)
issueIDYesIssue identifier (example: contrastPoor)
timeStampYesTimestamp of the report in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds domain context (what Kilotest is and how results are organized) but nothing about result shape, pagination, or the relationship to the diagnosis level beyond the hierarchy list.

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?

Two sentences, no filler, with the output scope stated first and the domain model second. It is appropriately short for a read-only lookup, though the opening sentence could have named the tool's actual resource (violator elements) more directly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values needn't be explained, and annotations cover safety, leaving little for the description to carry. Still, it fails to position this tool against listIssues/listDiagnoses, which is the main gap for a crowded sibling set of eleven tools.

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

Parameters3/5

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

Schema description coverage is 100%, with each of jobID, issueID and timeStamp documented including formats and examples, so the schema carries the parameter burden. The description contributes no additional meaning about how these three identifiers combine to scope the query, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description says it provides details about one issue in one report including the elements exhibiting that issue, and it lays out the report→issue→violator→diagnosis hierarchy. However, it never uses the word 'violator' and reads more like a single-issue lookup than a listing tool, so the verb+resource is muddled and it does not distinguish itself from siblings listIssues or listDiagnoses.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use guidance and no alternatives named, even though listIssues and listDiagnoses are obvious candidates for confusion. The hierarchy sentence only implicitly hints at when this tool fits (after you have a jobID/issueID/timeStamp).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

orderNewTestAInspect

Process my order to test a page about which no report is available yet, immediately and automatically approved, instead of waiting for manual approval. Testing typically takes about 2 minutes and occasionally up to 4 minutes. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
URLYes12- to 300-character URL of the page, including the https:// scheme and any query
reasonYes20- to 100-character reason why the page should be tested
descriptionYes1- to 100-character description of the page conforming to the naming convention used in the listReports output

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations only cover the safety profile (readOnlyHint false, destructiveHint false, non-idempotent); the description adds genuinely useful behavior the annotations cannot convey: immediate automatic approval, expected timing (typically 2 minutes, occasionally 4), and the report/issue/violator/diagnosis result hierarchy. That is strong added context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and approval behavior are front-loaded, which is good, but the text is a dense run-on and the closing sentence about the report/issue/violator/diagnosis structure describes general Kilotest output rather than this tool specifically. Some of it does not earn its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be explained, yet the description usefully adds timing and approval semantics. Combined with 100% schema coverage, an agent has nearly everything needed to invoke it, though the sibling choice (new vs retest) remains underspecified.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents URL, reason, and description with their length constraints and conventions. The description adds no parameter-specific meaning beyond that, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action (process my order to test a page) with a scope qualifier (about which no report is available yet), which implicitly separates it from the retest siblings. It is clear what the tool does, but the new-vs-retest distinction against orderRetest is left to inference rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It hints at when to use it ('instead of waiting for manual approval') and mentions the auto-approval benefit, but it never names the actual siblings such as requestNewTest or orderRetest, nor states exclusions. Usage is implied rather than routed explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

orderRetestAInspect

Process my order to retest a page immediately and automatically approved, instead of waiting for manual approval. Testing typically takes about 2 minutes and occasionally up to 4 minutes. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the latest report about the page (example: x9z)
reasonYes20- to 100-character reason why the page should be retested
timeStampYesTimestamp of the latest report about the page in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations cover the mutation profile (readOnlyHint=false, not idempotent, not destructive), and the description adds latency expectations (about 2, occasionally up to 4 minutes) plus the auto-approval behavior, which is genuinely useful beyond the structured fields. It does not mention duplicate-order or idempotency risks, which would be the remaining gap.

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?

The core action and the approval/timing details are front-loaded in the first two sentences. The trailing sentence explaining Kilotest's purpose and result hierarchy is largely domain context that is already available elsewhere and slightly dilutes the tool-specific content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not explain return values, and it does not need to compensate for parameter gaps given full schema coverage. It is nearly complete; the only omission is explicit routing guidance against the requestRetest and orderNewTest siblings.

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

Parameters3/5

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

Schema description coverage is 100%, so jobID, reason, and timeStamp are already fully documented with formats and constraints. The description adds no parameter-level meaning beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (order a retest of a page) and resource, and distinguishes the auto-approval path from the manual one. It does not explicitly name the sibling requestRetest, so the differentiation from that sibling is implied rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives the condition for using this tool implicitly ('instead of waiting for manual approval', 'immediately and automatically approved'), which implies it is the fast path. It never names the alternative tool or states when this tool should NOT be used, leaving the routing inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

requestFeatureCInspect

Process my request to add or improve a feature. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
featureYes20- to 1000-character description of requested feature improvement or new feature

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the agent knows this is a non-destructive, closed-world write-like action. The description adds nothing beyond that — it doesn't say what 'process' actually does (creates a ticket? notifies a team? rate limits?), and the report/issue/violator hierarchy sentence describes the product's data model, not this tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The first sentence is tight and front-loaded. The second sentence about front-end quality testing and the report/issue/violator/diagnosis hierarchy is tangential to submitting a feature request and consumes half the description without helping the agent invoke this specific tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is unnecessary, and the single parameter is fully specified. However, for a non-read-only action tool the description omits what processing entails (confirmation, tracking, follow-up), leaving a modest but real gap.

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

Parameters3/5

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

Schema description coverage is 100% with a single 'feature' parameter fully documented (20-1000 characters), so the schema carries the parameter burden. The description adds no extra meaning about the parameter, which matches the baseline 3 for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence gives a clear verb+resource ('process my request to add or improve a feature'), which is distinguishable from siblings like requestNewTest, requestRetest, and orderNewTest. The second sentence is domain context about Kilotest rather than the tool itself, so it neither adds nor detracts much from purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as requestNewTest or requestRetest, despite a crowded sibling set of request/order tools. The intent (feature requests) is only implied by the verb 'add or improve a feature'; no conditions, prerequisites, or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

requestNewTestAInspect

Process my request to test a page about which no report is available yet. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
URLYes12- to 300-character URL of the page, including the https:// scheme and any query
reasonYes20- to 100-character reason why the page should be tested
descriptionYes1- to 100-character description of the page conforming to the naming convention used in the listReports output

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds useful domain context (Kilotest's purpose, the report→issue→violator element→diagnosis hierarchy) but never says whether the request returns immediately or must be awaited, despite an awaitTest sibling implying asynchronous behavior.

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?

Two sentences, front-loaded with the action and its condition; the second sentence earns its place by explaining what Kilotest is and how results nest. 'Process my request' is slightly vague phrasing but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, for a non-read-only, non-idempotent submission tool sitting next to awaitTest, the absence of any statement about whether the test runs synchronously or must be polled is a meaningful completeness gap.

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

Parameters3/5

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

Schema description coverage is 100%, so URL, reason and description formats and length bounds are already fully documented. The description's mention of the listReports naming convention is background rather than added parameter guidance, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete action (request a test of a page) and a scoping condition (no report exists yet), which separates it from retest-style siblings. It does not explicitly distinguish itself from orderNewTest or requestRetest, so the agent must infer the boundary from the 'no report available yet' clause alone.

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?

'a page about which no report is available yet' is a clear when-to-use condition that implicitly routes existing-report cases to requestRetest. No sibling is named explicitly and no prerequisites (e.g. required account/permissions, sync vs async behavior) are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

requestRetestBInspect

Process my request to retest a page about which a report is available. Kilotest tests web pages for front-end quality (accessibility, usability, and standards conformity); results are organized as report, then issue, then violator element, then diagnosis.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIDYesJob identifier of the latest report about the page (example: x9z)
reasonYes20- to 100-character reason why the page should be retested
timeStampYesTimestamp of the latest report about the page in YYMMDDTHHmm format (example: 260503T0432)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tool nameYes
this requestYes
tool collectionYes
response contentYes
response metadataYes
URLs of similar requests for web usersYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, openWorldHint=false, idempotentHint=false and destructiveHint=false, and the description is consistent with a non-destructive write action. It usefully adds the precondition (an existing report) and the result hierarchy (report > issue > violator > diagnosis), but says nothing about what side effects occur, whether a new job is queued, or whether the request is charged/queued.

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?

The action is front-loaded in one sentence with the domain context following. It is only two sentences with no padding, though the second sentence largely restates the title and is background rather than operational guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be explained, and the required-report precondition is covered. The key omission is routing: with both requestRetest and orderRetest in the sibling set, the description leaves the agent unable to decide which one to call.

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

Parameters3/5

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

Schema description coverage is 100%, so jobID, reason and timeStamp are fully documented in the schema (including formats and examples). The description only indirectly gestures at the report's jobID/timeStamp via 'a page about which a report is available', adding no format or validation detail beyond the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence gives a specific verb+resource ('retest a page') and even states the precondition that a report must already exist. However it does nothing to separate itself from the sibling orderRetest (or requestNewTest), which an agent must choose between; the second sentence is domain background rather than purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'a page about which a report is available' implies when the tool is applicable, so usage is hinted at. But no alternative is named despite the near-identical sibling orderRetest, and there is no guidance on when to retest versus order a new test or request a feature.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 12 tool updates
    • AddedawaitTest
    • ChangedgetReport2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • ChangedlistDiagnoses2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • ChangedlistIssues2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • ChangedlistReports2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • ChangedlistViolators2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • AddedorderNewTest
    • AddedorderRetest
    • ChangedrequestFeature2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • AddedrequestNewTest
    • ChangedrequestRetest2 fields changed
      • removedOutput schema / definitions / RequestReference / properties / method / const
        Removed value: -"GET"
      • addedOutput schema / definitions / RequestReference / properties / method / enum
        Added value: +[
        +  "GET",
        +  "POST"
        +]
    • RemovedrequestTest
  2. 1 tool update
    • AddedgetKilotestOverview
  3. 2 tool updates
    • ChangedrequestFeature2 fields changed
      • changedInput schema / properties / feature / description
        Previous value: -"description of requested feature improvement or new feature"New value: +"20- to 1000-character description of requested feature improvement or new feature"
      • changedOutput schema / properties / this request / properties / body / properties / feature / description
        Previous value: -"description of requested feature improvement or new feature"New value: +"20- to 1000-character description of requested feature improvement or new feature"
    • ChangedrequestTest2 fields changed
      • changedInput schema / properties / description / description
        Previous value: -"10- to 100-character description of the page conforming to the naming convention used in the listReports output"New value: +"1- to 100-character description of the page conforming to the naming convention used in the listReports output"
      • changedOutput schema / properties / this request / properties / body / properties / description / description
        Previous value: -"10- to 100-character description of the page conforming to the naming convention used in the listReports output"New value: +"1- to 100-character description of the page conforming to the naming convention used in the listReports output"
  4. 6 tool updates
    • ChangedlistDiagnoses2 fields changed
      • changedOutput schema / definitions / ReportBasics / properties / days since the report was completed / type
        Previous value: -"number"New value: +[
        +  "number",
        +  "null"
        +]
      • changedOutput schema / properties / response content / properties / diagnoses of how the element exhibited the issue / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "count of violations of the rule by the element": {
        -          "type": "number"
        -        },
        -        "description of the violation": {
        -          "description": "Copied from the report instance (what); type not guaranteed."
        -        },
        -        "identifier of the violated rule": {
        -          "description": "Copied from the report instance (ruleID); type not guaranteed."
        -        },
        -        "severity of the violation on a 0-to-3 scale": {
        -          "description": "Copied from the report instance (ordinalSeverity); type not guaranteed."
        -        }
        -      },
        -      "required": [
        -        "identifier of the violated rule",
        -        "description of the violation",
        -        "severity of the violation on a 0-to-3 scale",
        -        "count of violations of the rule by the element"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "error": {
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "error"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "count of violations of the rule by the element": {
        +              "type": "number"
        +            },
        +            "description of the violation": {
        +              "description": "Copied from the report instance (what); type not guaranteed."
        +            },
        +            "identifier of the violated rule": {
        +              "description": "Copied from the report instance (ruleID); type not guaranteed."
        +            },
        +            "severity of the violation on a 0-to-3 scale": {
        +              "description": "Copied from the report instance (ordinalSeverity); type not guaranteed."
        +            }
        +          },
        +          "required": [
        +            "identifier of the violated rule",
        +            "description of the violation",
        +            "severity of the violation on a 0-to-3 scale",
        +            "count of violations of the rule by the element"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "error": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "error"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • ChangedlistIssues4 fields changed
      • changedOutput schema / definitions / ReportBasics / properties / days since the report was completed / type
        Previous value: -"number"New value: +[
        +  "number",
        +  "null"
        +]
      • addedOutput schema / properties / response content / properties / basics about all issues reported in the report / anyOf
        Added value: +[
        +  {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "how to get details about the issue": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "URL": {
        +              "type": "string"
        +            },
        +            "method": {
        +              "const": "GET",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "method",
        +            "URL"
        +          ],
        +          "type": "object"
        +        },
        +        "identifier": {
        +          "type": "string"
        +        },
        +        "impact on a user": {
        +          "type": "string"
        +        },
        +        "priority": {
        +          "enum": [
        +            "lowest",
        +            "low",
        +            "high",
        +            "highest"
        +          ],
        +          "type": "string"
        +        },
        +        "rule engines with any violations belonging to the issue": {
        +          "items": {
        +            "type": [
        +              "string",
        +              "null"
        +            ]
        +          },
        +          "type": "array"
        +        },
        +        "summary": {
        +          "type": "string"
        +        },
        +        "web users can get details about the issue at": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "identifier",
        +        "summary",
        +        "impact on a user",
        +        "priority",
        +        "rule engines with any violations belonging to the issue",
        +        "how to get details about the issue",
        +        "web users can get details about the issue at"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedOutput schema / properties / response content / properties / basics about all issues reported in the report / items
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "how to get details about the issue": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "URL": {
        -          "type": "string"
        -        },
        -        "method": {
        -          "const": "GET",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "method",
        -        "URL"
        -      ],
        -      "type": "object"
        -    },
        -    "identifier": {
        -      "type": "string"
        -    },
        -    "impact on a user": {
        -      "type": "string"
        -    },
        -    "priority": {
        -      "enum": [
        -        "lowest",
        -        "low",
        -        "high",
        -        "highest"
        -      ],
        -      "type": "string"
        -    },
        -    "rule engines with any violations belonging to the issue": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "summary": {
        -      "type": "string"
        -    },
        -    "web users can get details about the issue at": {
        -      "type": "string"
        -    }
        -  },
        -  "required": [
        -    "identifier",
        -    "summary",
        -    "impact on a user",
        -    "priority",
        -    "rule engines with any violations belonging to the issue",
        -    "how to get details about the issue",
        -    "web users can get details about the issue at"
        -  ],
        -  "type": "object"
        -}
      • removedOutput schema / properties / response content / properties / basics about all issues reported in the report / type
        Removed value: -"array"
    • ChangedlistReports1 field changed
      • changedOutput schema / properties / response content / properties / basics about all available reports / items / properties / days since the report was completed / type
        Previous value: -"number"New value: +[
        +  "number",
        +  "null"
        +]
    • ChangedlistViolators4 fields changed
      • changedOutput schema / definitions / ReportBasics / properties / days since the report was completed / type
        Previous value: -"number"New value: +[
        +  "number",
        +  "null"
        +]
      • addedOutput schema / properties / response content / properties / basics about all elements exhibiting the issue
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "count of rule engines reporting that the element exhibited the issue": {
        +            "type": "number"
        +          },
        +          "how to get details about the element": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "URL": {
        +                "type": "string"
        +              },
        +              "request method": {
        +                "const": "GET",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "URL",
        +              "request method"
        +            ],
        +            "type": "object"
        +          },
        +          "identifier": {
        +            "description": "Catalog index of the element in the report; a string or number, copied verbatim.",
        +            "type": [
        +              "string",
        +              "number"
        +            ]
        +          },
        +          "inner text": {
        +            "description": "Copied from the report catalog entry; type not guaranteed."
        +          },
        +          "tag name": {
        +            "description": "Copied from the report catalog entry; type not guaranteed."
        +          },
        +          "web users can get details about the element at": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "identifier",
        +          "tag name",
        +          "inner text",
        +          "count of rule engines reporting that the element exhibited the issue",
        +          "how to get details about the element",
        +          "web users can get details about the element at"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • removedOutput schema / properties / response content / properties / basics about all elements reported as exhibiting the issue
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "items": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "count of rule engines reporting that the element exhibited the issue": {
        -            "type": "number"
        -          },
        -          "how to get details about the element": {
        -            "additionalProperties": false,
        -            "properties": {
        -              "URL": {
        -                "type": "string"
        -              },
        -              "request method": {
        -                "const": "GET",
        -                "type": "string"
        -              }
        -            },
        -            "required": [
        -              "URL",
        -              "request method"
        -            ],
        -            "type": "object"
        -          },
        -          "identifier": {
        -            "type": "string"
        -          },
        -          "inner text": {
        -            "description": "Copied from the report catalog entry; type not guaranteed."
        -          },
        -          "tag name": {
        -            "description": "Copied from the report catalog entry; type not guaranteed."
        -          },
        -          "web users can get details about the element at": {
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "identifier",
        -          "tag name",
        -          "inner text",
        -          "count of rule engines reporting that the element exhibited the issue",
        -          "how to get details about the element",
        -          "web users can get details about the element at"
        -        ],
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ]
        -}
      • changedOutput schema / properties / response content / required
        Previous value: -[
        -  "basics about the report",
        -  "basics about the issue",
        -  "details about the issue",
        -  "basics about all elements reported as exhibiting the issue"
        -]New value: +[
        +  "basics about the report",
        +  "basics about the issue",
        +  "details about the issue",
        +  "basics about all elements exhibiting the issue"
        +]
    • ChangedrequestRetest2 fields changed
      • addedOutput schema / properties / response content / properties / disposition of your request
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "how a web user can check for completion": {
        +          "type": "string"
        +        },
        +        "how you can check for completion": {
        +          "type": "string"
        +        },
        +        "what happens next": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "what happens next",
        +        "how you can check for completion",
        +        "how a web user can check for completion"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / response content / required
        Previous value: -[
        -  "details about your request"
        -]New value: +[
        +  "details about your request",
        +  "disposition of your request"
        +]
    • ChangedrequestTest2 fields changed
      • addedOutput schema / properties / response content / properties / disposition of your request
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "how a web user can check for completion": {
        +          "type": "string"
        +        },
        +        "how you can check for completion": {
        +          "type": "string"
        +        },
        +        "what happens next": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "what happens next",
        +        "how you can check for completion",
        +        "how a web user can check for completion"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / response content / required
        Previous value: -[
        -  "details about your request"
        -]New value: +[
        +  "details about your request",
        +  "disposition of your request"
        +]
  5. 8 tool updates
    • First observedgetReport
    • First observedlistDiagnoses
    • First observedlistIssues
    • First observedlistReports
    • First observedlistViolators
    • First observedrequestFeature
    • First observedrequestRetest
    • First observedrequestTest

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI platforms to run ensemble front-end quality tests on public web pages, including accessibility, usability, and standards conformity, and to retrieve the resulting reports.
    1,432 npm
    3
    MIT
  • A
    license
    C
    quality
    A
    maintenance
    Automates testing of finished web projects by opening them in a real browser, checking interactions, layout, fonts, images, and basic security, and producing a report with annotated screenshots.
    8
    4
    MIT
  • A
    license
    B
    quality
    Not graded
    maintenance
    Provides comprehensive website validation across performance, accessibility, SEO, and security dimensions using multiple testing services including WebPageTest, Google PageSpeed Insights, Axe DevTools, Mozilla Observatory, and SSL Labs. Enables automated website health assessments through browser automation and API integrations.
    12
    3 npm
    1
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources