pypi qrp-mcpstdioApache-2.0updated 12d ago
Every signature in your wallet, contract and validator rests on elliptic-curve cryptography. A large quantum computer breaks it. This tells your AI agent exactly where yours is.
What can you do with Quantum Readiness Scan?
qrp-mcp
Every signature in your wallet, contract and validator rests on elliptic-curve cryptography. A large quantum computer breaks it. This tells your AI agent exactly where yours is.
An MCP server that scans a local directory for cryptography that Shor's algorithm defeats — secp256k1, Ed25519, BLS, Schnorr, RSA — plus weak primitives and CI signing commands, and classifies each one: broken by a quantum computer, post-quantum, or neither.
Everything runs on your machine. No network calls, no account, no API key, nothing uploaded. A tool that reads your keys' surroundings has no business phoning home, so this one makes zero outbound connections — enforced by a test, not promised in a paragraph.
Why this matters for chains and wallets
Bitcoin and Ethereum authenticate with ECDSA over secp256k1. Solana, Cardano and Polkadot use Ed25519. Ethereum's consensus layer aggregates with BLS12-381. Taproot adds Schnorr.
All four are public-key schemes whose security rests on discrete-log hardness — and all four fall to the same quantum algorithm. The practical consequence is specific: once a public key is exposed, the private key becomes derivable. Reused addresses, on-chain public keys, and long-lived validator keys are where that exposure already exists today.
None of this is a prediction about dates. It is an inventory question: which of my code paths sign with what? That question has an answer right now, and this tool gives it.
Quick start
Add it to your MCP client — no installation step, uvx fetches and runs it:
{
"mcpServers": {
"qrp": {
"command": "uvx",
"args": ["qrp-mcp"]
}
}
}
Then ask your agent:
Scan ~/code/my-protocol for quantum-vulnerable cryptography.
Tools
| Tool | What it does |
|---|---|
scan_repo(path) |
Scans a directory's source, CI/CD configs and infrastructure-as-code; returns findings and a summary |
list_algorithms() |
The algorithm families the server recognises and how each is classified |
What it looks at
Chain and wallet code — secp256k1, ecrecover, ethers, web3, bitcoinjs, ECPair,
btcec, tweetnacl, @solana/web3.js, solana_program, bls12-381, blst, @chainsafe/bls,
BIP340/Taproot Schnorr. Solidity (.sol), Rust (.rs), Move and Cairo are scanned alongside
Python, Go, Java, JS/TS, Ruby, PHP, C/C++/C# and shell.
Classical crypto anywhere else — RSA, DSA, DH, ECDSA and elliptic-curve usage, plus MD5, SHA-1, RC4 and DES/3DES.
Post-quantum schemes, by family — ML-KEM, ML-DSA, SLH-DSA, Falcon, NTRU, Classic McEliece, BIKE, HQC, FrodoKEM, XMSS. Each carries the mathematical family it rests on (structured or unstructured lattice, code-based, hash-based, isogeny-based) and where it stands: standardised, selected, candidate, withdrawn or broken. SIKE is reported as broken and HAWK as withdrawn rather than counted as quantum-resistant — "post-quantum" is a category, not an assessment.
CI/CD pipelines — signing commands such as gpg --sign, cosign sign, signtool,
jarsigner, codesign.
Infrastructure as code — Terraform and Kubernetes key algorithms, and private key material committed by mistake.
Real run against OpenZeppelin's contracts (711 files, about five seconds):
{
"detected_algorithms": ["ECDSA", "RSA"],
"summary": {
"quantum_vulnerable_count": 2,
"pqc_ready_count": 0,
"highest_severity": "high",
"pqc_readiness": "classical_only"
}
}
Why deterministic
There is no LLM inside this tool. The same input always produces the same output, and every finding points at a file and a line you can open yourself.
That is the point of handing it to an agent: the agent brings the language, the tool brings the truth. An agent guessing about your signing code is worse than nothing; an agent reading a deterministic inventory can actually reason about it.
What it is not
A free inventory tool, not a readiness assessment. It deliberately does not do:
- risk scoring or prioritisation,
- migration planning,
- network, host or certificate scanning,
- tracking change over time.
Those live in the Quantum Readiness Platform, the product this tool is extracted from. Nothing here is crippled to push you there — what it does, it does completely.
It also does not tell you that you are about to be hacked. It tells you what you are using.
License
Apache-2.0.
Install
Add Quantum Readiness Scan to your client. Pick the one you use.
claude mcp add qrp-mcp -- uvx qrp-mcpcodex mcp add qrp-mcp -- uvx qrp-mcpamp mcp add qrp-mcp -- uvx qrp-mcp{
"mcpServers": {
"qrp-mcp": {
"command": "uvx",
"args": [
"qrp-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"qrp-mcp": {
"command": "uvx",
"args": [
"qrp-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"qrp-mcp","command":"uvx","args":["qrp-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"qrp-mcp": {
"command": "uvx",
"args": [
"qrp-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"qrp-mcp": {
"command": "uvx",
"args": [
"qrp-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"qrp-mcp": {
"command": "uvx",
"args": [
"qrp-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"qrp-mcp": {
"type": "local",
"command": "uvx",
"args": [
"qrp-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"qrp-mcp": {
"command": {
"path": "uvx",
"args": [
"qrp-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
uvx qrp-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance19/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 5 days ago
- Has a release history
- Repository is not archived
- Licensed Apache-2.0
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.1Latest | Aug 26, 2026 |
| 0.1.0 | Aug 11, 2026 |