Skip to main content
Glama
Post-Quantum Cryptography MCP Server

Post-Quantum Cryptography MCP Server

by scottdhughes

pqc_encapsulate

Encapsulates a shared secret with a KEM public key to enable quantum-resistant key exchange and secure session setup.

Instructions

Encapsulate a shared secret using a KEM public key (key encapsulation)

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "algorithm": "<algorithm>"
    },
    "name": "pqc_encapsulate"
  }
}

Input Schema

NameRequiredDescriptionDefault
algorithmYesKEM algorithm name
public_keyNoBase64-encoded public key
key_store_nameNoName of stored KEM keypair

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.10.0

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It does not disclose what the tool returns (e.g., ciphertext and shared secret), whether it is safe or mutating, permission requirements, or how public_key and key_store_name interact as alternative key sources. For a cryptographic operation with zero annotation coverage, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted wording. It is concise and readable, though its brevity contributes to gaps in behavior and usage detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, and the tool is a cryptographic encapsulation operation with multiple key-source parameters. The description omits return values, output format, security semantics, and how the two optional key source modes differ, making it incomplete for correct invocation beyond the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents all three parameters, including base64 encoding for public_key and the stored keypair option via key_store_name. The description adds no parameter-level meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Encapsulate a shared secret using a KEM public key.' This clearly identifies the operation and distinguishes it from sibling tools like pqc_decapsulate and pqc_hybrid_encap at a basic level, though it does not explicitly name or contrast those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance, no prerequisites, and no alternatives. It does not explain when to choose pqc_encapsulate over pqc_hybrid_encap, pqc_hybrid_seal, or pqc_seal-style operations, nor does it mention constraints such as requiring a KEM public key or a stored keypair.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.