Post-Quantum

Provides quantum-resistant cryptographic operations via MCP using liboqs, enabling KEM, signature, hashing, and security analysis.
  • python

0

GitHub Stars

python

Language

6 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "scottdhughes-post-quantum-mcp": {
      "command": "/path/to/post-quantum-mcp/run.sh",
      "args": []
    }
  }
}

You can run a Post-Quantum Cryptography MCP Server locally to perform quantum-resistant cryptographic operations via MCP clients. It leverages liboqs to provide key exchange, signatures, hashing, and security analyses aligned with NIST-inspired post-quantum standards, enabling AI agents and tools to experiment with quantum-resistant workflows.

How to use

Set up the server locally and connect an MCP client to perform post-quantum operations. Start the local MCP server, then request key generation, encapsulation, signing, verification, and hashing using the available MCP endpoints. You will interact with the server through the client’s standard MCP call patterns, receiving structured results such as public keys, ciphertexts, shared secrets, signatures, and verification outcomes.

Typical workflow: start the server, choose an algorithm, generate keys, perform encapsulation or decapsulation, sign messages, verify signatures, and assess security properties. You can also query information about specific algorithms and compare security levels. No raw protocol details are required here; you interact through your MCP client’s user-friendly commands and responses.

How to install

# Prerequisites
# - Python 3.10+
# - liboqs shared library
# - uv (recommended) or pip
# 1. Install liboqs on macOS (shared library build)
# Note: build from source to obtain a shared library
git clone --depth 1 --branch 0.15.0 https://github.com/open-quantum-safe/liboqs.git
cd liboqs && mkdir build && cd build
cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$HOME/.local ..
make -j4 && make install
# 1. Install liboqs on Ubuntu/Debian
sudo apt-get update
sudo apt-get install liboqs-dev
# 2. Clone and install the MCP server
git clone https://github.com/scottdhughes/post-quantum-mcp.git
cd post-quantum-mcp

# Create virtual environment with Python 3.10+
uv venv --python 3.10 .venv
source .venv/bin/activate

# Install dependencies
uv pip install liboqs-python "mcp>=1.0.0"
# 3. Configure MCP clients (Claude Code and Claude Desktop)
# Claude Code JSON snippet
cat > ~/.claude.json << 'JSON'
{
  "mcpServers": {
    "pqc": {
      "type": "stdio",
      "command": "/path/to/post-quantum-mcp/run.sh",
      "args": [],
      "env": {}
    }
  }
}
JSON

# Claude Desktop JSON snippet
cat > claude_desktop_config.json << 'JSON'
{
  "mcpServers": {
    "pqc": {
      "command": "/path/to/post-quantum-mcp/run.sh"
    }
  }
}
JSON
```]},{

Additional content

Security notes: keys are generated in memory by default. For production use, implement secure key storage according to your threat model. liboqs implementations strive for constant-time operations but may not cover all side-channel threats. Choose algorithms in line with current standards, recognizing that ML-KEM and ML-DSA are NIST-approved, while others may be experimental. Ensure the liboqs version matches the Python bindings you install.

Development and testing commands you might run during integration include running tests, formatting, and type checks. Keep your environment isolated to avoid conflicts with system packages.

Available tools

pqc_list_algorithms

List all available post-quantum algorithms with their NIST mappings and categories (KEMs and signatures).

pqc_algorithm_info

Provide detailed information about a specific algorithm, including key sizes, security level, and performance characteristics.

pqc_generate_keypair

Generate a quantum-resistant key pair for a chosen algorithm, returning base64-encoded public and private keys.

pqc_encapsulate

Perform key encapsulation to create a shared secret using a given public key and algorithm.

pqc_decapsulate

Recover the shared secret from ciphertext using the corresponding secret key.

pqc_sign

Sign a message with a post-quantum signature and return a base64-encoded signature.

pqc_verify

Verify a post-quantum signature against a public key and message.

pqc_hash_to_curve

Hash a message using quantum-safe hash functions and output digests in hex/base64.

pqc_security_analysis

Analyze and report the security properties and equivalence levels of a chosen algorithm.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Post-Quantum MCP Server - scottdhughes/post-quantum-mcp | VeilStrat