The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Rustok Wallet listing page.
MCP Server for Rustok — connects Claude Desktop, Cursor, and cloud agents to the Rustok wallet via Gateway.
Rustok ships two wallet products — pick the trust model you want:
rustok-wallet (agent edition) | rustok-wallet-tui (this repo) | |
|---|---|---|
| Who signs | the agent, unrestricted | you, in a separate terminal (rustok-console, y/N + PIN) |
| Where | rustokwallet.com · ClawHub · image ghcr.io/rustok-org/rustok-wallet | this repo (main) · ClawHub · image ghcr.io/rustok-org/rustok-wallet-tui |
| Line | 0.4.x (maintained from the wallet-v0.4.0 tag) | 0.5.x+ |
The console image is published by version only — there is no latest tag to
pull, on purpose: the installer pins the exact digest of the release it ships
with, and a floating tag would quietly undo that.
The installer verifies the wallet image's cosign signature before anything
touches disk, pulls it by digest, and installs the rustok command — it never
touches a secret, a keystore or your wallet. Requires podman (or docker) and
cosign; you can read the script before running it. Full walkthrough, including
the by-hand setup without the shim: Installation Guide.
The wallet is one self-contained image (Core + Gateway + MCP over stdio + the
human-approval console); keys live only in a local container volume and never
leave your machine. Transactions that move funds are approved by a human in a
second terminal with rustok console — the agent cannot drive it.
The wallet skill (skills/rustok-wallet-tui/)
installs straight from this repo:
Both editions are on ClawHub as separate listings: the agent edition at
@temrjan/rustok-wallet, and the
console edition — the maintained one — at
@rustok/wallet, published as
Rustok Agentic Wallet.
io.github.rustok-org/rustok-wallet
(OCI package ghcr.io/rustok-org/rustok-wallet, stdio). A TUI-edition
registry entry ships separately as io.github.rustok-org/rustok-wallet-tui.@rustok/wallet, and the agent
edition at @temrjan/rustok-wallet.To run the full stack (MCP → Gateway → Core + Redis), use the compose file
in rustok-org/meta.
The network-facing SSE transport is gated by a shared bearer token.
RUSTOK_MCP_INBOUND_API_KEY) — clients must send
Authorization: Bearer <token> to reach /mcp/sse and /mcp/message.
Distinct from the outbound RUSTOK_MCP_API_KEY (MCP → Gateway).openssl rand -hex 32.EventSource API cannot set headers and is not a supported
client; use an MCP client that sends request headers./health is always public (used by the container healthcheck).⚠️ The MCP has no built-in brute-force / rate-limit protection. Terminate it behind the edge proxy (Caddy) with host-level rate limiting (see the
rustok-org/metadeploy docs); do not expose it to the internet directly.
Rustok is a self-custody AI-native crypto wallet. The MCP Server is a thin bridge between LLM agents and the Rustok Gateway — private keys never leave the Core service (they stay in the local keystore volume).
read_wallet / preview_tx / execute_tx): the
stdio transport is process-trusted (all by default; restrict with
RUSTOK_MCP_CAPABILITIES); the network-facing SSE transport is bearer-gated.txguard surfaces
a risk level on preview but does not block. Opt-in limits may come later.RUSTOK_ALLOWED_CHAINS decides which ones are shown (default
1,8453,42161 — Ethereum, Base, Arbitrum). Those read out of the box: the build
carries two public nodes for each. Naming your own (RUSTOK_RPC_URLS_<id>, or an
Alchemy key) replaces the carried list rather than joining it. Any node that
reads a balance learns the address and the IP that asked — that is true of ours,
yours, and your provider's alike.preview_transaction returns the decoded call (who/what is
authorized), a pre-sign simulation (revert check), gas, and a txguard risk level.
Execution is not exposed as an MCP tool.This repository is licensed under MIT-0.
The warranty and liability terms it carries, and the limit of every safeguard this wallet advertises, are stated in full here: https://github.com/rustok-org/mcp/blob/main/DISCLAIMER.md
The Rustok Core wallet engine is a proprietary artifact built from the private rustok-org/core repository.