关于 rustok-wallet
rustok-wallet 通过 MCP 服务将 LLM Agent 连接到 Rustok 自托管 Ethereum 钱包。密钥保存在本地 Core 密钥库中,工具权限按能力控制;维护中的控制台版本要求通过人工批准才能执行转移资金的交易。
主要功能
- 01通过 MCP 连接 Rustok Gateway
- 02本地加密存储密钥
- 03按能力控制钱包和预览工具
- 04交易模拟与风险评估
- 05仅追加的 SQLite 操作日志
适用场景
- 01让 Agent 查看钱包信息
- 02签名前审查交易
- 03要求在终端批准转移资金的交易
MCP 相关
MCP 服务在 Agent 与 Rustok Gateway 之间提供桥接,支持本地 stdio 和由 Bearer Token 保护的 SSE 传输。控制台版本提供读取钱包和预览交易的能力;转移资金的执行需在独立终端中批准。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm ghcr.io/rustok-org/rustok-wallet:v0.4.2本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/rustok-org/rustok-wallet:v0.4.2stdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
rustok-mcp
Rustok 的 MCP 服务 — 通过 Gateway 将 Claude Desktop、Cursor 和云端 Agent 连接到 Rustok 钱包。
两个版本
Rustok 提供两款钱包产品——请选择你需要的信任模型:
rustok-wallet(Agent 版) | rustok-wallet-tui(本仓库) | |
|---|---|---|
| 谁来签名 | Agent,不受限制 | 你,在独立终端中(rustok-console,y/N + PIN) |
| 发布位置 | rustokwallet.com · ClawHub · 镜像 ghcr.io/rustok-org/rustok-wallet | 本仓库(main)· ClawHub · 镜像 ghcr.io/rustok-org/rustok-wallet-tui |
| 版本线 | 0.4.x(基于 wallet-v0.4.0 标签维护) | 0.5.x+ |
安装(rustok-wallet-tui,自托管)
请单独安装可信的 cosign 3+,然后使用已发布的版本技能中的先验证后执行引导流程。该流程会通过 --proto '=https' --tlsv1.2 下载,并在运行安装程序前验证清单签名和安装程序哈希。流程不会通过管道传入 Shell。仓库中的技能是尚未填充内容的源模板;钱包二进制文件只能从生成的版本/列表包安装。
rustok init # you choose a 6-digit PIN; the recovery phrase prints once
rustok connect claude # read-only; also cursor / hermes / openclaw
rustok connect claude --force --capabilities read_wallet,preview_tx,execute_tx 在扩展权限前,需要在用户自己的终端中确认。核心策略和 PIN 与能力授权彼此独立。rustok update 会验证已签名版本并保留明确指定的子集;运行中的会话会继续使用旧镜像/授权,直到人工重启。用户确认接受不受限制的自主权后,不设硬编码的支出限额。
钱包是一个自包含镜像(Core + Gateway + MCP over stdio + 人工审批控制台);密钥仅存储在本地容器卷中,不会离开你的设备。涉及资金转移的交易必须由人工在第二个终端中通过 rustok console 批准——Agent 无法操控该终端。
安装为 Agent 技能
钱包技能(skills/rustok-wallet-tui/)可直接从本仓库安装:
# skills CLI (Claude Code, Cursor, and other agents) — https://skills.sh
npx skills add rustok-org/mcp
# Hermes Agent
hermes skills tap add rustok-org/mcp
hermes skills install rustok-org/mcp/rustok-wallet-tui
两个版本都在 ClawHub 上分别发布:Agent 版位于
@temrjan/rustok-wallet,控制台版——当前维护的版本——位于
@rustok/wallet,发布名称为
Rustok Agentic Wallet。
注册表
- Official MCP Registry — Agent 版发布为
io.github.rustok-org/rustok-wallet(OCI 包ghcr.io/rustok-org/rustok-wallet,stdio)。TUI 版的注册表条目单独发布为io.github.rustok-org/rustok-wallet-tui。 - ClawHub — 两个列表:控制台版(当前维护)位于
@rustok/wallet,Agent 版位于@temrjan/rustok-wallet。
快速开始(开发)
# Install dependencies
uv sync --dev
# Run the server
uv run rustok-mcp
# Or run stdio transport
uv run rustok-mcp-stdio
Docker
docker build -t rustok-mcp .
docker run -p 127.0.0.1:3001:3001 -e RUSTOK_MCP_HOST=0.0.0.0 rustok-mcp
如需运行完整技术栈(MCP → Gateway → Core + Redis),请使用
rustok-org/meta 中的 compose 文件。
身份验证
面向网络的 SSE 传输由共享的 Bearer 令牌保护。
- 入站(
RUSTOK_MCP_INBOUND_API_KEY)——客户端必须发送Authorization: Bearer <token>,才能访问/mcp/sse和/mcp/message。 这与出站RUSTOK_MCP_API_KEY(MCP → Gateway)不同。 - **开发环境:**留空——本地回环流程保持开放,服务启动时会记录一条警告。
- **生产环境:**必填。令牌必须通过请求头传递,绝不能放在查询字符串中(查询字符串会泄露到访问日志中)。使用
openssl rand -hex 32生成令牌。 - 浏览器的
EventSourceAPI 无法设置请求头,因此不受支持;请使用会发送请求头的 MCP 客户端。 /health始终公开(供容器健康检查使用)。- 本地 stdio 传输受进程信任机制保护,不受此令牌限制。
⚠️ MCP 没有内置的暴力破解/速率限制防护。请将其置于边缘代理(Caddy)之后,并配置主机级速率限制(参见
rustok-org/meta部署文档);不要将其直接暴露到互联网。
什么是 Rustok?
Rustok 是一款自托管式 AI 原生加密钱包。MCP 服务是大模型 Agent 与 Rustok Gateway 之间的轻量桥接层——私钥绝不会离开 Core 服务(而是保存在本地密钥库卷中)。
- **自我托管:**密钥静态加密(Argon2id + AES-256-GCM),且仅在你设备上的 Core 内解密。
- 按能力控制的工具(
read_wallet/preview_tx/execute_tx):stdio 传输默认只读(显式授权使用RUSTOK_MCP_CAPABILITIES);面向网络的 SSE 传输由 Bearer 令牌保护。 - **设计上不包含支出策略:**没有硬编码的限额、预算或黑名单——你需要有意识地接受 Agent 钱包中的资金所带来的风险。
txguard会在预览时显示风险等级,但不会阻止操作。未来可能会提供可选的限额。 - 链:
RUSTOK_ALLOWED_CHAINS决定显示哪些链(默认值为1,8453,42161——Ethereum、Base、Arbitrum)。这些链开箱即用:构建包中为每条链提供了两个公共节点。指定自有节点(RUSTOK_RPC_URLS_<id>或 Alchemy 密钥)会替换随附的节点列表,而不是与其合并。任何读取余额的节点都会获知地址以及发起请求的 IP——无论是我们的、你的还是服务提供商的节点,都一样。 - 信息充分的预览:
preview_transaction会返回解码后的调用(授权对象/内容)、签名前模拟(回滚检查)、Gas 以及 txguard 风险等级。执行操作不会作为 MCP 工具公开。 - **审计日志:**每项操作都会以仅追加的方式记录到 Core 中的 SQLite。
文档
许可证
本仓库采用 MIT-0 许可证。
本钱包附带的保修与责任条款,以及它所宣称的各项防护措施的限制,均在此处完整列明: https://github.com/rustok-org/mcp/blob/main/DISCLAIMER.md
Rustok Core 钱包引擎是基于私有 rustok-org/core 仓库构建的专有制品。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。