Skip to content

Quantum Expectations

com.quantum-expectations/quantum-expectationsquantum-expectations.comstreamable-httpv0.6.0Scanned

Quantum error-correction feasibility: success probability, qubit overhead, records, trends.

13 tools: 6 change things and 7 only read.

Tools: 0 delete, 0 irreversible, 6 write, 7 read.
  • Reads private data · 1
  • Reads text others write · 3
  • Can send data out · 0
  • 1 finding

Tools listed without sign-in. Remote posture

Anlyon alternative

6 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

13 tools

Changes things 6Claude Code: ask
  • compare_hardware_scenariosRun the same circuit against multiple current SOTA hardware entries in one call so an agent can rank platforms without N sequential compute_expectation calls.1 finding

    Why it is in this group

    • The name "compare_hardware_scenarios" says "compare": a word for reading.
    • The description's first verb is "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "compare_hardware_scenarios" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "compare_hardware_scenarios" says "compare": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Run the same circuit against multiple current SOTA hardware entries in one call so an agent can rank platforms without N sequential compute_expectation calls. Defaults to every entry in list_current_quantum_computers when hardwareIds is omitted.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • compute_expectationGiven a quantum circuit (2-qubit error rate p, qubit count n, depth d, optional connectivity class), compute the effective error rate, success probability, and optional surface-cod…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Given a quantum circuit (2-qubit error rate p, qubit count n, depth d, optional connectivity class), compute the effective error rate, success probability, and optional surface-code or qLDPC overhead. Without error correction a 2d-lattice connectivity is charged as a routing multiplier on depth (result.routingOverheadFactor); hardwareId supplies the device's class automatically. The response is self-describing (formulas, assumptions, caveats, glossary, SOTA hardware, historic series with source URLs) so an agent can reason from one call. For the inverse ("what hardware do I need?") use compute_required_error_rate; to rank multiple platforms in one call use compare_hardware_scenarios.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • compute_fault_tolerant_resourcesGiven an algorithm stated as (numLogicalQubits, tCount) and a physical error rate (or hardwareId), derive the full surface-code + magic-state-distillation footprint from the genera…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Given an algorithm stated as (numLogicalQubits, tCount) and a physical error rate (or hardwareId), derive the full surface-code + magic-state-distillation footprint from the general laws of the Litinski lattice-surgery cost model (no per-scenario constants): distillation factory choice, tile layout, required code distance, total physical qubits, and wall-clock time. Results are reported under TWO published logical-error fits (conservative + optimistic) because they disagree by 13-268x (d=7 to d=25) - always state both. Returns an explicit `infeasible` block when no cataloged factory or code distance can satisfy the error budget. Computes numbers only: comparing against classical alternatives and concluding "should this run on a quantum computer" stays with you, the calling agent (state the caveats when you do).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • compute_quantum_volume_rateCompute the Quantum Volume Rate (QV/second): QVR = V_Q / (log2(V_Q) * t_2Q + t_meas).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Compute the Quantum Volume Rate (QV/second): QVR = V_Q / (log2(V_Q) * t_2Q + t_meas). First-order estimate of how fast a device prepares one QV-sized square circuit (one native 2Q gate per QV layer + one end-of-circuit measurement). OVERSTATES achievable rate: real compilation inflates the 2Q-gate count per layer; omits reset/SPAM, mid-circuit measurement, and classical-control latency. For a production throughput metric, see IBM's CLOPS (arXiv:2110.14108).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • compute_required_error_rateInverse of compute_expectation.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Inverse of compute_expectation. Given a circuit (numQubits, compDepth) and an acceptable effective error rate, return the required per-gate logical error rate (requiredLogicalErrorRatePerGate: a number, or null only when the target is genuinely unreachable; never 0) and, for every EC option (no-EC, surface-code per distance, every qLDPC code), the required physical error rate plus the subset of current SOTA hardware that already qualifies. An option whose inverse lands above the code threshold is capped at min(MAX_P, threshold) and carries a `note` (any sub-threshold p satisfies it); `unreachableReason` is reserved for genuinely unreachable options. Answers "what hardware do I need to run this algorithm?".

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • fit_historic_seriesFit a log-linear trend (ln(value) = slope * year + intercept) to one historic series — fidelity or qubit-count — for one hardware type.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Fit a log-linear trend (ln(value) = slope * year + intercept) to one historic series — fidelity or qubit-count — for one hardware type. Atomic primitive: compose with list_current_quantum_computers, compute_required_error_rate, or your own modelling to answer "when might hardware reach X?". residualStdDev is the BIASED (maximum-likelihood) RMS — divides by n, not (n - 2); on small series (n ≈ 3–5) inflate by √(n / (n - 2)) before building confidence intervals.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 7Show 7 read-only tools
  • get_agent_briefReturn the plain-text site brief describing scope, assumptions, the honesty clause, and the API contract.No findings

    Why it is in this group

    • The name "get_agent_brief" says "get": a word for reading.
    Description, as the server wrote it
    Return the plain-text site brief describing scope, assumptions, the honesty clause, and the API contract. Mirrors the /agent.txt document served by the website.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_historic_seriesReturn the full historic time series — either two-qubit gate error rates ("fidelity") or physical qubit counts ("qubit-count") — broken down by hardware type.No findings

    Why it is in this group

    • The name "get_historic_series" says "get": a word for reading.
    Description, as the server wrote it
    Return the full historic time series — either two-qubit gate error rates ("fidelity") or physical qubit counts ("qubit-count") — broken down by hardware type. Each datapoint carries a source URL. Use this to extrapolate trends — "when might hardware reach X?" — or pair with fit_historic_series for a log-linear fit on one hardware type.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_current_quantum_computersReturn the representative-entry table of current SOTA quantum computers (id, hardware type, physical qubit count, 2-qubit error rate, connectivity class with a note on the coupling…Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "list_current_quantum_computers" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "return" and "table": it reads databases.
    • untrusted-inputThe description's first sentence says "return" and "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Return the representative-entry table of current SOTA quantum computers (id, hardware type, physical qubit count, 2-qubit error rate, connectivity class with a note on the coupling graph, source URL). Same data that powers the website's "Current Quantum Computers" table. For the model's capability prediction per entry in QUOPS units, read hardwareContext.currentQuantumComputers[].modelCapability from compute_expectation; for measured scores, list_quops_scores.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_example_algorithmsReturn the curated list of example quantum algorithms with published resource estimates (qubit count, depth/gate count, source paper URL).Reads text others writeNo findings

    Why it is in this group

    • The name "list_example_algorithms" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "return" and "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Return the curated list of example quantum algorithms with published resource estimates (qubit count, depth/gate count, source paper URL). Useful for comparing what algorithms need vs. what hardware can deliver. Each entry carries a `provenance` field: 'published-circuit' means the figure is reproducible from the source, 'attested-estimate' means the source withholds the circuit and the figure rests on the authors' attestation, with a `provenanceNote` giving the specifics. Carry that caveat whenever you quote an attested figure; do not present it as equivalently sourced.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_hardware_timingsReturn per-platform gate-cycle timings (2Q gate time, readout time, in SI seconds) plus the testbed they were measured on (`representativeDevice`) and the native 2Q gate name, with…No findings

    Why it is in this group

    • The name "list_hardware_timings" says "list": a word for reading.
    Description, as the server wrote it
    Return per-platform gate-cycle timings (2Q gate time, readout time, in SI seconds) plus the testbed they were measured on (`representativeDevice`) and the native 2Q gate name, with source URLs. Joins list_current_quantum_computers via `hardwareType`, but the numbers are BEST-CASE DEMONSTRATIONS from small testbeds, not measurements on the joined devices, which run their gates and array readout orders of magnitude slower. Use for ratio analysis or as optimistic lower-bound inputs to runtime estimates and compute_quantum_volume_rate, and say so when you quote a runtime.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_qldpc_codesReturn the catalog of supported qLDPC codes (id, label, family, n, k, d, circuitLevelDistance, ancilla counts, roundsPerLogicalOp, threshold, fitCoefficients {c0, c1, c2}, logicalE…No findings

    Why it is in this group

    • The name "list_qldpc_codes" says "list": a word for reading.
    Description, as the server wrote it
    Return the catalog of supported qLDPC codes (id, label, family, n, k, d, circuitLevelDistance, ancilla counts, roundsPerLogicalOp, threshold, fitCoefficients {c0, c1, c2}, logicalErrorExponent [alpha = d_circ/2], source URLs, provenance, caveats). The per-block, per-syndrome-cycle logical error rate is p^alpha * exp(c0 + c1*p + c2*p^2) for p <= threshold (the source paper's own fitting form; c1 = c2 = 0 means a plain power law). `provenance` names the table or section each constant was read from. `caveats` is an array of source-level qualifications on the entry's constants (loose distance bounds, values a source marks as assumed, numbers that differ between sources); empty when the sources carry none. Read it before quoting a code's logical error rate as firm. Use a code's `id` as the `errorCorrectionCode` input to `compute_expectation`.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_quops_scoresReturn the measured QUOPS capability scores (arXiv:2609.12146): per device, the largest random universal circuit size executed at polarization >= 1/sqrt(e) inside the cone w^2 <= s…Reads text others writeNo findings

    Why it is in this group

    • The name "list_quops_scores" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "return" and "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Return the measured QUOPS capability scores (arXiv:2609.12146): per device, the largest random universal circuit size executed at polarization >= 1/sqrt(e) inside the cone w^2 <= s <= w^3, with width, QUOPS rate, architecture (physical, physical-postselected, logical) and source URL, plus the utility-scale targets in the same unit (RSA-2048 and FeMoco). These are measurements, the yardstick the site's own model is checked against: compare them with modelCapability.quopsEquivalent on the compute_expectation hardware context. Vendor and device names appear here because this table is agent-facing only.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.

Reads private data1
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write3
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out0
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Remote posture

What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.

Tools listed without sign-in

Looked at Oct 22, 2026, 14:39 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.

Reachable
yes
HTTP status of an anonymous initialize
200
tools/list served without credentials
yes
Tools that change things, listed without credentials
6
Protocol version
2025-06-18
WWW-Authenticate on 401
not observed
resource_metadata in WWW-Authenticate
not observed
RFC 9728 protected resource metadata
not observed
Authorization servers
not observed
Legacy HTTP+SSE transport
no
Dynamic client registration
not observed
Client ID metadata documents
not observed
  • WarnThe whole server

    The endpoint served tools/list without credentials, and the list has 6 tools that change things (6 write). Whether a call also works without credentials was not tested: tools are never called.

    Matched text

    https://www.quantum-expectations.com/api/mcp: tools/list returned 13 tools to an anonymous client, including compute_expectation (write), compute_required_error_rate (write), compute_fault_tolerant_resources (write), compare_hardware_scenarios (write), compute_quantum_volume_rate (write) and 1 more

    What this check looks for

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "compare_hardware_scenarios" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "compare_hardware_scenarios" says "compare": a word for reading.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 0.6.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http quantum-expectations https://www.quantum-expectations.com/api/mcp
claude mcp add --transport http quantum-expectations https://www.quantum-expectations.com/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__quantum-expectations__list_current_quantum_computers",
      "mcp__quantum-expectations__list_quops_scores",
      "mcp__quantum-expectations__list_hardware_timings",
      "mcp__quantum-expectations__list_example_algorithms",
      "mcp__quantum-expectations__list_qldpc_codes",
      "mcp__quantum-expectations__get_historic_series",
      "mcp__quantum-expectations__get_agent_brief"
    ],
    "ask": [
      "mcp__quantum-expectations__compute_expectation",
      "mcp__quantum-expectations__compute_required_error_rate",
      "mcp__quantum-expectations__compute_fault_tolerant_resources",
      "mcp__quantum-expectations__compare_hardware_scenarios",
      "mcp__quantum-expectations__compute_quantum_volume_rate",
      "mcp__quantum-expectations__fit_historic_series"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as quantum-expectations. Review it before you use it.

Capability tags behind 3 rules
  • mcp__quantum-expectations__list_current_quantum_computers private-data, untrusted-input
  • mcp__quantum-expectations__list_quops_scores untrusted-input
  • mcp__quantum-expectations__list_example_algorithms untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/com.quantum-expectations/quantum-expectations/verify?hash=35e2294a048037d7dfeb15cc02aaf0744d49589dd7252188e78f7505e1c955f6" | jq -e '.changed == false'

Pinned hash 35e2294a0480, from Oct 21, 2026, 18:54 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/com.quantum-expectations/quantum-expectations/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for com.quantum-expectations/quantum-expectations
[![anlyon.dev](https://anlyon.dev/badge/com.quantum-expectations/quantum-expectations.svg)](https://anlyon.dev/servers/com.quantum-expectations/quantum-expectations)

Source: MCP Registry. Synced Oct 21, 2026, 18:01 UTC.