Protocol
Standard MCP JSON-RPC methods are supported (protocolVersion: 2024-11-05):
Example, by hand:
Authentication
Tool calls are executed as real REST requests against the API, so each tool carries its endpoint’s own auth requirements (scopes). The MCP handler forwards theAuthorization header from your MCP request to the underlying REST call verbatim; when no Authorization header is present, a server-configured API key (if any) is used as X-API-Key.
The curated tool set
By default the server exposes a curated subset of the generated tools (the deployment can opt into exposing all of them). Tool names encode the REST operation:quantumlock_<verb>_<path with / and - replaced by _>.
Typed key-engine tool contracts
Alongside the auto-generated tools, QuantumLock publishes a typed tool-contract catalog for the Enterprise Key Engine (metadata only — execution always maps to the API endpoints, never to a parallel runtime). Each contract carries a risk rating and a strict input schema. The catalog covers:- Entropy:
quantumlock_list_entropy_sources,quantumlock_collect_entropy,quantumlock_verify_entropy,quantumlock_get_entropy_job,quantumlock_condition_entropy - Key lifecycle:
quantumlock_generate_enterprise_key,quantumlock_list_keys,quantumlock_get_key,quantumlock_get_key_evidence,quantumlock_wrap_key,quantumlock_revoke_key,quantumlock_activate_key,quantumlock_rotate_key,quantumlock_suspend_key,quantumlock_expire_key,quantumlock_archive_key,quantumlock_destroy_key(ratedcritical) - Governance:
quantumlock_policy_check,quantumlock_key_provenance_report,quantumlock_doctor - Artifact signing:
quantumlock_sign_artifact,quantumlock_verify_artifact
Pointing an MCP client at it
QuantumLock’s MCP endpoint is plain HTTP JSON-RPC. For clients that speak HTTP MCP directly, configure the URL; for stdio-only clients (such as Claude Desktop), use a stdio-to-HTTP bridge likemcp-remote:
Withdrawn services (PKI, cipher, trust badges) are absent from the MCP tool list by construction — an advertised tool is a capability claim, and the tool list is generated from the live spec that no longer contains them. See Withdrawn services.