nukez-mcp
Python client for the Nukez MCP server — agent-native persistent storage with cryptographic verification on Solana.
The Nukez MCP is a streamable HTTP JSON-RPC server that wraps the Nukez gateway. It is keyless: the server never holds a wallet or signing key. Clients execute payments externally, sign Ed25519 operation envelopes locally, and pass those envelopes through MCP tool arguments.
This package provides a simple class around an HTTP library with a method for connecting to the server, listing its tools, and calling them.
Install
pip install nukez-mcp
Quickstart
from nukez_mcp import NukezMCP
with NukezMCP() as mcp:
info = mcp.connect()
print(info["serverInfo"]) # server name and version
tools = mcp.list_tools()
print(f"{len(tools)} tools registered")
status = mcp.call_tool("nukez_status")
print(status["capabilities"]["payment_rails"])
The default endpoint is the production server:
https://mcp.nukez.xyz/mcp
Pass a different endpoint= to the constructor to target another
deployment.
The tool surface
The production server registers 15 tools:
| Group | Tools |
|---|---|
| Payment & setup | nukez_quote, nukez_pay, nukez_provision, nukez_setup |
| Files | nukez_create_file, nukez_store, nukez_confirm, nukez_upload_chunk, nukez_retrieve, nukez_delete |
| Proof & freshness | nukez_status, nukez_verify, nukez_recompute_verify |
| Memory | nukez_remember, nukez_recall |
The canonical flow is nukez_quote → external chain transfer → nukez_pay
→ nukez_provision, after which mutating and payer-authorized operations —
store, confirm, delete, remember, attest push, recompute-verify — require
client-signed envelopes. Reads such as retrieve, recall, status, and
structural verify need only the receipt_id.
Signed envelopes and payments
Envelope signing and payment execution are deliberately not part of this package: they involve your local keypair and are documented, with runnable helpers, in the canonical guides:
- https://nukez.xyz/docs/mcp — production model and connection details
- https://nukez.xyz/docs/mcp/examples — envelope signing (
pynacl+base58) and Solana transfer helpers (solders) - https://nukez.xyz/docs/mcp/tools — full tool reference
A signed envelope is passed straight through a tool's envelope argument:
env = {...} # built and signed locally — see docs/mcp/examples
files = mcp.call_tool("nukez_retrieve", {
"receipt_id": receipt_id,
"envelope": env,
})
Two exceptions to the one-envelope pattern: nukez_remember takes a
list of two signed envelopes (one for the memory record file, one for
the index), and nukez_quote / nukez_pay / nukez_upload_chunk take no
envelope at all.
Worked example: two-phase on-chain attestation
Anchoring an attestation is a two-phase flow — the server is keyless, so the
first call returns action_required="sign_envelopes" with an envelope spec
(note the query field, which the signed envelope JSON must carry verbatim),
and the second call anchors on-chain. The gateway also auto-reattests after
every file mutation, so an explicit push=True is only needed when you want
an immediate, inline on-chain anchor:
v1 = mcp.call_tool("nukez_verify", {"receipt_id": receipt_id, "push": True})
spec = v1["envelopes_needed"][0]
attest_env = build_envelope( # your local signer — see docs/mcp/examples
receipt_id, spec["method"], spec["path"],
ops=spec["ops"], body=spec["body"], query=spec["query"],
)
v2 = mcp.call_tool("nukez_verify", {
"receipt_id": receipt_id, "push": True, "envelope": attest_env,
})
assert v2["attestation"]["push_ok"] # anchored: tx_signature is on Solana
Reference demonstration: Trust Verification
The canonical end-to-end usage example is the Trust Verification demo — a live, agent-driven walkthrough that connects to the production Nukez MCP server, provisions storage with a real BETA-token x402 payment, stores and encrypts artifacts through signed MCP operations, survives a tamper attempt, and verifies everything on Solana mainnet across 10 preset cues, including:
- Agent surface online → connect to the Nukez protocol via MCP
- Grant local wallet access (a discrete consent moment — the server never holds keys)
- Procure user-owned storage on Solana mainnet (BETA-paid x402 quote)
- Draft a real output artifact
- Store artifacts through signed Nukez MCP operations
- Attack: an adversary attempts to tamper with the record
- Verify: the tamper is detected against the on-chain attestation
Every request in that demo travels the same JSON-RPC surface this package
wraps: initialize → tools/call with envelope passthrough, exactly as in
the Quickstart above. The demo's signing/payment helpers are packaged from
the runnable examples at https://nukez.xyz/docs/mcp/examples.
Errors
JSON-RPC errors and tool-level failures raise nukez_mcp.NukezMCPError,
carrying code and data when the server provides them.
License
MIT
Metadata
Release files for nukez-mcp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| nukez_mcp-0.1.1.tar.gz | 8.5 kB | With provenance | Details for nukez_mcp-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| nukez_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for nukez_mcp-0.1.1-py3-none-any.whl |
Total release size: 16.3 kB
Release files / nukez_mcp-0.1.1.tar.gz
| Download URL | nukez_mcp-0.1.1.tar.gz |
|---|---|
| Size | 8.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f1b63c7a7b40d8eaa1af0d14c47cc65298bba2d8d6ae3fe204af504da778c306
|
|
BLAKE2b-256 checksum How to use checksums |
cb14b615f594648da30d4ee74d054a3993d1db474baf6d101b96fd9265396736
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 10, 2026.
Transparency logRelease files / nukez_mcp-0.1.1-py3-none-any.whl
| Download URL | nukez_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 7.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b05c3c4126aedc935c3544d0416750c4363f1e96a14ca012668f5ecf952e6d58
|
|
BLAKE2b-256 checksum How to use checksums |
05f7bf2fe5fda79285ac231e27813469e082edddbe157e93772cbffcafcacbc0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 10, 2026.
Transparency logSecurity for nukez-mcp 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for nukez_mcp-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 10, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.