Quantum Resource Estimator MCP Server
An MCP (Model Context Protocol) server that makes quantum resource estimation accessible through natural language. Built on Microsoft's QDK resource estimator.
What It Does
Estimates physical quantum resources (qubit count, runtime) needed to run quantum algorithms on fault-tolerant hardware. Helps researchers answer questions like:
- "How many qubits does it take to break RSA-2048 with Shor's algorithm?"
- "How does a superconducting qubit hardware compare to trapped-ion for this chemistry simulation?"
- "What's the tradeoff between qubit count and runtime for my algorithm?"
Tools
| Tool | Description |
|---|---|
estimate_resources |
Run a single resource estimation with defaults or custom params |
compare_configurations |
Side-by-side comparison across hardware architectures |
generate_frontier |
Pareto frontier: qubit-count vs. runtime tradeoff |
list_qubit_models |
Reference data for all 6 predefined qubit models |
list_qec_schemes |
Reference data for QEC schemes (surface_code, floquet_code) |
list_algorithm_templates |
Predefined algorithms with logical resource counts |
explain_parameters |
Domain-specific guidance (cryptography, chemistry, optimization) |
custom_qubit_model_estimate |
Estimation with fully custom qubit parameters |
Installation
Requires Python 3.10+ and uv. The qsharp package bundles its own native runtime — no .NET SDK install needed.
git clone https://github.com/DeDuckProject/quantum-resource-estimator-mcp
cd quantum-resource-estimator-mcp
uv sync
Usage
Run the server
uv run qre-mcp
Configure in Claude Desktop
The recommended approach uses uv run --directory so no manual venv activation is needed.
macOS — ~/Library/Application Support/Claude/claude_desktop_config.json
Windows — %APPDATA%\Claude\claude_desktop_config.json
Linux — ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"quantum-resource-estimator": {
"command": "/path/to/uv",
"args": [
"run",
"--directory",
"/path/to/quantum-resource-estimator-mcp",
"qre-mcp"
]
}
}
}
Replace /path/to/uv with the output of which uv and /path/to/quantum-resource-estimator-mcp with the absolute path to the cloned repo.
Configure in Claude Code
claude mcp add quantum-resource-estimator -- /path/to/uv run --directory /path/to/quantum-resource-estimator-mcp qre-mcp
Inspect with MCP dev tools
uv run mcp dev src/qre_mcp/server.py
Algorithm Input Methods
- Template (easiest):
algorithm_template="shor_2048"— uses predefined logical counts from published research - Logical counts:
logical_counts='{"numQubits": 100, "tCount": 200}'— provide your own circuit counts - Q# code:
qsharp_code="..."— provide Q# source with a parameterless entry point
Example Queries
Via an LLM with this MCP server connected:
"Estimate the resources to break RSA-2048 on superconducting hardware"
"Compare all qubit technologies for the FeMo-cofactor chemistry simulation"
"Show me the qubit vs runtime tradeoff for Shor's algorithm on trapped-ion hardware"
"I have a circuit with 500 logical qubits and 10 million T gates — how many physical qubits do I need?"
Predefined Algorithm Templates
| ID | Algorithm | Category |
|---|---|---|
shor_2048 |
Shor's factoring (RSA-2048) | Cryptography |
grover_aes128 |
Grover search (AES-128) | Cryptography |
chemistry_femo |
FeMo-cofactor simulation | Chemistry |
qpe_generic |
Quantum phase estimation | General |
Logs
The server runs over stdio (MCP protocol), so stdout/stderr are not available for human-readable output. Logs are written to a file you can follow in a separate terminal:
tail -F ~/.local/share/qre-mcp/qre-mcp.log
-F (capital F) handles log rotation — the file is capped at 5 MB with up to 3 backups.
To use a custom log path, set the QRE_MCP_LOG environment variable before starting the server.
Running Tests
uv run pytest
Tests cover validators, result formatting, reference data, and parameter building. Integration tests (requiring qsharp) are skipped if the package is not available.
Metadata
Release files for quantum-resource-estimator-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| quantum_resource_estimator_mcp-0.1.0.tar.gz | 86.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| quantum_resource_estimator_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.8 kB
Release files / quantum_resource_estimator_mcp-0.1.0.tar.gz
| Download URL | quantum_resource_estimator_mcp-0.1.0.tar.gz |
|---|---|
| Size | 86.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d246e01cf4ed2def970595237557dbc3668f75e5b8860c107661e76e54319cfa
|
|
BLAKE2b-256 checksum How to use checksums |
fc65c6939b17445e37932f6d0cc3d7073af91a1483f862f585f58e5afe8c802a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / quantum_resource_estimator_mcp-0.1.0-py3-none-any.whl
| Download URL | quantum_resource_estimator_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 32.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ce046f07022b249d7fffbcd2c56fd814d7201d663d8ab6064a7b79524bb4eb6
|
|
BLAKE2b-256 checksum How to use checksums |
e7769f9742ebd341985dc0773baa6a2a540652aa6b2e159d145dfbaa6403ef0c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|