Rustok Wallet

io.github.rustok-org由 GitHub 帳號 rustok-org 發布v0.4.2更新於 Oct 24, 2026

Self-custody Ethereum agent wallet (MCP/stdio). Keys stay in a local Docker volume.

已驗證STDIO僅桌面金融安全與監控

概覽

AI 產生的概覽

自託管以太坊代理錢包 MCP 伺服器,讓助理讀取錢包餘額、預覽交易,並在授權後執行轉帳,私鑰保留在本機。

可以做什麼
讀取錢包狀態與各鏈餘額(read_wallet 能力)。
適用情境
當你希望 AI 代理查看自託管以太坊錢包,或在明確授權下準備並送出交易,同時私鑰始終留在自己的機器上時使用。
執行需求
以 Docker 映像透過 stdio 在本機執行,需要 Docker。錢包需先用 PIN 和助記詞初始化。能力需明確授予(例如透過 RUSTOK_MCP_CAPABILITIES);鏈由 RUSTOK_ALLOWED_CHAINS 設定,可提供自訂 RPC 位址或 Alchemy 金鑰。需要連線至 RPC 節點的網路。
安裝前請注意
這是持有真實資金的錢包:代理版不需人工核准即可簽署,且沒有硬編碼的消費上限,代理可能轉走資金。助記詞和 PIN 屬敏感資訊;金鑰保存在本機 Docker 磁碟區中。交易預覽和餘額查詢會送往 RPC 節點,節點可得知位址和 IP。對外網的 SSE 傳輸需要 bearer 權杖且無內建限流,不應直接暴露在網際網路。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Rustok Wallet,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

rustok-mcp

[CI] [License: MIT-0]

MCP Server for Rustok — connects Claude Desktop, Cursor, and cloud agents to the Rustok wallet via Gateway.

Two editions

Rustok ships two wallet products — pick the trust model you want:

rustok-wallet (agent edition)rustok-wallet-tui (this repo)
Who signsthe agent, unrestrictedyou, in a separate terminal (rustok-console, y/N + PIN)
Whererustokwallet.com · ClawHub · image ghcr.io/rustok-org/rustok-walletthis repo (main) · ClawHub · image ghcr.io/rustok-org/rustok-wallet-tui
Line0.4.x (maintained from the wallet-v0.4.0 tag)0.5.x+

Install (rustok-wallet-tui, self-custody)

Install trusted cosign 3+ independently, then use the verify-before-execute bootstrap in the published release skill. It downloads over --proto '=https' --tlsv1.2, verifies the manifest signature and installer hash before running the installer. There is no pipe-to-shell path. The repository skill is an unfilled source template; install wallet binaries only from the generated release/listing package.

sh
rustok init             # you choose a 6-digit PIN; the recovery phrase prints oncerustok connect claude   # read-only; also cursor / hermes / openclaw

rustok connect claude --force --capabilities read_wallet,preview_tx,execute_tx requires confirmation in the user's own terminal before expanding rights. Core policy and PIN remain separate from the capability grant. rustok update verifies a signed release and preserves explicit subsets; live sessions retain their old image/grants until a human restart. There are no hard-coded spending limits after the user acknowledges unlimited autonomy.

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.

Install as an agent skill

The wallet skill (skills/rustok-wallet-tui/) installs straight from this repo:

bash
# skills CLI (Claude Code, Cursor, and other agents) — https://skills.shnpx skills add rustok-org/mcp
# Hermes Agenthermes skills tap add rustok-org/mcphermes skills install rustok-org/mcp/rustok-wallet-tui

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.

Registries

  • Official MCP Registry — the agent edition is published as 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.
  • ClawHub — two listings: the console edition (maintained) at @rustok/wallet, and the agent edition at @temrjan/rustok-wallet.

Quick Start (Development)

bash
# Install dependenciesuv sync --dev
# Run the serveruv run rustok-mcp
# Or run stdio transportuv run rustok-mcp-stdio

Docker

bash
docker build -t rustok-mcp .docker run -p 127.0.0.1:3001:3001 -e RUSTOK_MCP_HOST=0.0.0.0 rustok-mcp

To run the full stack (MCP → Gateway → Core + Redis), use the compose file in rustok-org/meta.

Authentication

The network-facing SSE transport is gated by a shared bearer token.

  • Inbound (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).
  • Dev: leave it empty — the loopback flow stays open and the server logs a warning at startup.
  • Prod: required. The token must travel in the request header, never in a query string (query strings leak into access logs). Generate one with openssl rand -hex 32.
  • The browser 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 local stdio transport is process-trusted and not gated.

⚠️ 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/meta deploy docs); do not expose it to the internet directly.

What is Rustok?

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).

  • Self-custody: keys are encrypted at rest (Argon2id + AES-256-GCM) and only decrypted inside Core on your machine.
  • Capability-gated tools (read_wallet / preview_tx / execute_tx): the stdio transport defaults to read-only (explicit grants use RUSTOK_MCP_CAPABILITIES); the network-facing SSE transport is bearer-gated.
  • No spending policy by design: no hard-coded limits, budgets, or blocklists — you consciously accept the risk of funds on the agent wallet. txguard surfaces a risk level on preview but does not block. Opt-in limits may come later.
  • Chains: 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.
  • Informed preview: 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.
  • Audit logging: every action is append-only logged to SQLite in Core.

Documentation

License

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.

來源:README.md,提交 209d422

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.4.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分