Skip to main content
Glama

scan_tls

Check whether a website supports post-quantum TLS key exchange (X25519MLKEM768) and report if it is protected or exposed to harvest-now-decrypt-later risk, with fix and monitoring options.

Instructions

Check whether a website negotiates post-quantum TLS key exchange (X25519MLKEM768). Returns an honest summary: if the site is already protected it says so; if not, it states the "harvest now, decrypt later" risk and the available fix (full report) and monitoring options.

Args:
    domain: the hostname to scan, e.g. "example.com".

Input Schema

NameRequiredDescriptionDefault
domainYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full burden, and it does disclose the shape of the answer (a verdict plus risk explanation and remediation pointers) rather than dumping raw protocol data. It says nothing about the outbound network connection being made, authentication requirements, rate limits, or failure behavior for unreachable hosts, which are the traits an agent most needs for a scanning tool with zero annotation coverage.

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 capability is front-loaded in the first sentence and the return behavior follows logically. The trailing 'Args:' block is a Python-docstring artifact that duplicates schema content, which is mild waste, though the single argument line still earns its place given 0% schema coverage.

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 the description need not enumerate return fields, and its emphasis on the honest verdict is appropriate. But for a network-scanning tool with no annotations and an undocumented parameter schema, missing details about connectivity assumptions, timeouts, and how the paid-report and monitoring suggestions relate to the sibling tools leave real gaps.

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?

With one required parameter at 0% schema coverage, the description must compensate, and it does: it identifies the argument as a hostname and gives a concrete example ('example.com'), which disambiguates bare host from URL. It stops short of covering edge cases such as ports, non-default TLS ports, or IP literals.

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 plus the exact technique: checks whether a site negotiates post-quantum TLS key exchange via X25519MLKEM768. That is far more specific than the name alone. It does not, however, contrast itself with the sibling scan_tls_raw, so an agent cannot tell from the description why it would pick this over the raw variant.

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: the description implies a quick, verdict-style check whose negative result points toward a 'full report' and 'monitoring options', which map loosely onto buy_full_report and start_monitoring. There is no explicit when-to-use statement, no exclusion of the raw scan variant, and no stated preconditions such as a resolvable public hostname.

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