quantum-aether
Provides a PayPal approval link for purchasing the $49 full post-quantum TLS report after a scan, requiring explicit user consent for immediate delivery.
Quantum Aether MCP server
Let any MCP-compatible AI assistant (Claude Desktop, and others) check a website's post-quantum TLS readiness — and, with the user's consent, buy the full report or start monitoring — by calling Quantum Aether as a native tool.
It wraps the public Quantum Aether API. No API key. No secrets.
Tools
Tool | What it does |
| Scans a host and returns an honest summary. If the site already uses post-quantum key exchange it says so; otherwise it states the "harvest now, decrypt later" risk and the fix. |
| The structured result (grade, key exchange group, post-quantum yes/no, certificate, scan_id, price). |
| Returns a PayPal approval link for the $49 report. Consent required (Austrian FAGG). |
| Starts a daily monitoring subscription ($29 or $99 / month). |
Related MCP server: owasp-mcp-scan
Install
pip install quantum-aether-mcp
# or from source:
pip install -e .Use with Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"quantum-aether": {
"command": "python",
"args": ["-m", "quantum_aether_mcp"]
}
}
}Then ask your assistant: "Is example.com ready for post-quantum TLS?" — it will call scan_tls.
Honesty by design
The tool reports the real scan result. A site that already negotiates X25519MLKEM768 is told it is protected, with no upsell. A problem is surfaced only when it genuinely exists. This is what makes AI assistants trust and reuse the tool.
Scanner, methodology and open dataset: https://ather-quatum.cloud
Available Tools
4 toolsbuy_full_reportA
Buy the full post-quantum readiness report ($49) for a prior scan. Returns a PayPal approval link (approve_url) and a status_url. Set consent_immediate_delivery to true ONLY after the buyer expressly agreed the report is delivered immediately and that they lose the right of withdrawal (Austrian FAGG). After the buyer approves in PayPal, the report link appears at status_url.
Args:
scan_id: the scan_id returned by scan_tls_raw.
consent_immediate_delivery: must be true, and only with the buyer's express consent.
| Name | Required | Description | Default |
|---|---|---|---|
| scan_id | Yes | ||
| consent_immediate_delivery | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses that money changes hands ($49), that the call is asynchronous (approve_url → buyer approves in PayPal → report link appears at status_url), and that consent has legal consequences under Austrian FAGG. It omits whether repeat calls create duplicate orders, idempotency, and behavior on invalid or foreign scan_ids.
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?
Front-loaded with the action and price, then the return shape, then the consent constraint, then per-argument notes — a sensible order. The Args block is largely non-redundant, though the repeated 'must be true' phrasing and the legal parenthetical add a little bulk.
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?
No output schema exists, and the description compensates by naming approve_url, status_url, and the eventual report link, plus the approve-then-poll flow. Missing only failure modes (invalid scan_id, unpaid approval timeout) for a payment tool, which is a modest gap rather than a blocker.
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%, so the description must compensate, and it does: scan_id's provenance is named (from scan_tls_raw), and consent_immediate_delivery's meaning, required value, and legal semantics are explained rather than restated. Both parameters gain meaning that the bare boolean/string schema cannot convey.
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?
States a specific verb and resource ('Buy the full post-quantum readiness report'), adds price ($49) and a precondition ('for a prior scan'), which cleanly separates it from the scan_tls / scan_tls_raw / start_monitoring siblings. An agent can tell this is the monetization step, not another scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly ties the input to a sibling ('the scan_id returned by scan_tls_raw') and spells out the exact precondition for consent_immediate_delivery. It lacks a when-not clause (e.g., what to do if the buyer declines consent, or whether a purchase already exists for that scan), so it is clear but not fully routable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_tlsA
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".
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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.
scan_tls_rawA
Same scan as scan_tls but returns the structured result (grade, key_exchange_group, post_quantum_key_exchange, certificate_key, scan_url, full_report_price, scan_id).
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so the description carries the whole burden. It discloses the return fields (including full_report_price and scan_id, which hints at a paid upsell path), but says nothing about whether the scan is read-only/safe, latency, failure modes, or rate limits for a network-facing operation.
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?
A single front-loaded sentence with no filler; the sibling comparison comes first and the field list second. The parenthetical is long but each item is informational.
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?
With no output schema, listing the returned fields is the right compensation and is done well. However, for a scanning tool the description never says what is scanned (TLS configuration, handshake, certificate), whether the call is costly or rate-limited, or how full_report_price relates to buy_full_report, leaving notable gaps.
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?
Only one parameter, domain, with 0% schema description coverage. The name is largely self-explanatory, but the description adds no detail on accepted formats (bare hostname vs. URL, port, IDN) or what a scan covers for that domain.
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?
Names the sibling scan_tls explicitly and states the differentiator: it returns the structured result rather than (implicitly) a raw one. The parenthetical enumerates the returned fields, so the agent knows the shape of the payoff. It stops short of a clean verb+resource statement of what the scan itself checks, but the contrast with scan_tls gives a usable purpose.
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 definition effectively says when to pick this over scan_tls — when you want the structured grade/key-exchange/certificate fields. There is no negative guidance (no exclusions, no note on when the raw variant is preferable or whether the scan is free).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_monitoringA
Start a daily monitoring subscription (plan "starter" = $29/mo up to 10 domains, "business" = $99/mo up to 100 domains). Returns the PayPal plan id to complete the subscription. Set consent to true ONLY after the customer agreed to email processing and immediate start.
Args:
email: the customer's email.
plan: "starter" or "business".
consent: must be true, with the customer's agreement.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | No | starter | |
| Yes | |||
| consent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the whole burden and does well: it discloses the recurring daily nature, the price and domain caps per plan, that a PayPal plan id is returned to complete an external payment flow, and that consent is legally gated. It omits idempotency, permissions, and what happens on duplicate subscription, so it falls short of a 5.
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 core purpose and pricing are front-loaded and the sentence count is low, but the Python-docstring style 'Args:' block partially restates what the schema already names, which is mild redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by explaining that a PayPal plan id is returned to finish the subscription. Pricing, consent, and all params are covered; only edge cases like repeat or upgrade behavior are missing.
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%, yet the description documents all three parameters, including the pricing and domain limits behind each plan value and the exact meaning of consent. This adds substantial meaning beyond the bare string/boolean types in the 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 states a specific verb and resource: 'Start a daily monitoring subscription'. It also names the concrete plans and their pricing/limits, so it is clearly distinguishable from siblings like scan_tls and buy_full_report.
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?
It gives a clear precondition for use: set consent to true only after the customer has agreed to email processing and immediate start, which is a real gate on when the tool may be invoked. It does not, however, say when to prefer this over buy_full_report or what to do when a subscription already exists.
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.
4 tool updates
v1.0.1- First observed
buy_full_report - First observed
scan_tls - First observed
scan_tls_raw - First observed
start_monitoring
TDQS
Scored across 4 tools
scan_tls and scan_tls_raw perform the identical scan and differ only in output shape, which is the one plausible source of misselection; descriptions do explicitly flag the difference and that scan_tls_raw yields the scan_id needed downstream. buy_full_report and start_monitoring target clearly distinct monetization flows.
All four tools use snake_case with a verb-first pattern (scan_tls, buy_full_report, start_monitoring), which is predictable. The only deviation is the '_raw' variant suffix on scan_tls_raw, a minor but readable exception.
Four tools is tight but defensible for a focused 'scan a domain for post-quantum TLS, then upsell report/monitoring' server. The set is slightly thin given the paid plans cover 10-100 domains and subscriptions have no management surface.
The scan-to-purchase funnel is covered, but lifecycle operations are missing: no tool to list/retrieve prior scans or reports, no monitoring status/list/cancel, and no batch scan despite plans advertising up to 100 domains. Agents must fall back on raw status_url polling outside the tool surface.
Maintenance
Related MCP Connectors
Scans remote MCP servers for protocol, security, and TLS issues; exposes scan tools via MCP.
Experimental MCP server for current empirical verification of explicit public HTTPS endpoint claims.
Scan any MCP server for tool-poisoning, security, auth & license. Trust score before install.
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceFree SSL/TLS scanning and Let's Encrypt certificate issuance (private key stays local), plus certificate-expiry monitoring via one MCP server. Public scan and cert tools need no account.3MIT
- AlicenseNot gradedqualityDmaintenancePassive security scanner that audits a running MCP server against the OWASP MCP Top 10 and grades it A-F. Read-only static analysis of the advertised tools, prompts and resources with console/JSON/SARIF output, and it also runs as an MCP server itself.54 npmMIT
- AlicenseAqualityAmaintenancePost-quantum readiness for AI coding agents: scans code for quantum-vulnerable cryptography (RSA/ECDH/ECDSA/DH) and returns NIST ML-KEM/ML-DSA/SLH-DSA (and hybrid) migration guidance, with fix verification and dependency checks. Content-based, advisory tools only; runs local (npx @quantakrypto/mcp) or as a hosted OAuth endpoint.1615Apache 2.0
- AlicenseAqualityAmaintenanceAn MCP server that scans local codebases for quantum-vulnerable cryptography (secp256k1, Ed25519, RSA, etc.) and CI signing commands, classifying each finding as quantum-broken, post-quantum, or neither. It runs entirely locally with no network calls, providing a deterministic inventory for AI agents.51,754 PyPI3Apache 2.0