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.
- 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".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "compare_hardware_scenarios" says "compare": a word for reading.
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.
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.
What this check looks forMatched 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
Findings
Matches of fixed checks, with the text they matched.
The server marks "compare_hardware_scenarios" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "compare_hardware_scenarios" says "compare": a word for reading.
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/mcpclaude mcp add --transport http quantum-expectations https://www.quantum-expectations.com/api/mcpRun 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.
{
"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.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/com.quantum-expectations/quantum-expectations)Source: MCP Registry. Synced Oct 21, 2026, 18:01 UTC.