← 返回 Skills 市场
genoshide

wallet-mcp

作者 genoshide · GitHub ↗ · v1.5.0 · MIT-0
cross-platform ⚠ suspicious
71
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install wallet-mcp
功能描述
Generate, manage, and perform multi-chain wallet operations on Solana and EVM chains with JSON output, including batch sends, sweeps, scans, imports, and exp...
安全使用建议
This skill appears to be a real multi‑chain wallet manager (it implements generation, batch sends, sweeps, imports/exports and stores private keys locally). That said, proceed cautiously: - Do not run this against real private keys or production balances until you audit the repository source and are certain you trust it. The tool stores private keys in plaintext CSV (~/.wallet-mcp/wallets.csv) and supports export/import with raw keys. - The registry metadata omitted environment/credential declarations yet the code reads .env and expects SOLANA_RPC_URL / EVM_RPC_URL and a WALLET_DATA_DIR. Expect to provide these values and review any .env files carefully. - The skill includes a helper (openclaw-setup) that will append entries to your OpenClaw TOOLS.md to make the tool persist in the agent’s memory. If you do not want the tool to modify agent configuration, do not run that helper or inspect its code first. - Installation instructions pull code from GitHub (uv tool install git+https://github.com/...). Treat that as running third‑party code — review the repo or run in an isolated environment (VM/container) first. - Prefer using labels (--from-label / --to-label) rather than pasting private keys into chat or command lines; avoid --include-keys unless creating an encrypted backup in a secure location. What would raise confidence: a clear declaration of required env vars/paths in the registry, a smaller least-privilege install option, and explicit code review confirming no hidden network endpoints or telemetry that could exfiltrate keys. If you want, I can highlight the specific source files/lines to review (e.g., openclaw/wallet.py, src/wallet_mcp/core/storage.py, and the openclaw-setup implementation) and search for network calls or file-writing code paths.
功能分析
Type: OpenClaw Skill Name: wallet-mcp Version: 1.5.0 The wallet-mcp bundle is classified as suspicious primarily due to high-risk security practices and aggressive agent-steering instructions. The tool stores cryptocurrency private keys in plaintext within a local CSV file (~/.wallet-mcp/wallets.csv), which is a significant vulnerability, although it is documented in README.md and SECURITY.md. The SKILL.md file employs prompt-injection techniques by explicitly instructing the AI agent to ignore built-in blockchain tools and prioritize wallet.py, effectively hijacking the agent's decision-making process. Additionally, the openclaw-setup command in server.py programmatically modifies the agent's persistent configuration file (TOOLS.md) to ensure the skill remains active across sessions, which is an invasive persistence mechanism for a skill bundle.
能力标签
cryptorequires-wallet
能力评估
Purpose & Capability
Name/description (wallet manager for Solana/EVM) aligns with the code and tooling included. However, the registry lists no required environment variables or credentials while the code and documentation rely on several env vars (SOLANA_RPC_URL, EVM_RPC_URL, WALLET_DATA_DIR, .env) and on persistent local storage (~/.wallet-mcp/wallets.csv). The skill also offers commands to export/import private keys and to write configuration into OpenClaw files — capabilities that are expected for a wallet manager but are sensitive and should have been reflected in the declared requirements.
Instruction Scope
SKILL.md tightly constrains runtime behavior (must call wallet.py, synchronous commands) and documents many wallet operations (generate, send, sweep, import/export with include-keys). It explicitly instructs modifying OpenClaw files (download SKILL.md/wallet.py into ~/.openclaw and use an openclaw-setup command), references local secrets files (.env and ~/.wallet-mcp/wallets.csv), and encourages passing private keys (albeit recommending label lookups). The instructions therefore direct the agent to read and write sensitive local files and to accept private keys via CLI — all within scope for a wallet tool but high‑sensitivity actions that were not declared in the registry metadata.
Install Mechanism
Registry contains no formal install spec, but the repository includes full installation docs that instruct installing via uv (git+https://github.com/genoshide/wallet-mcp.git) or pip from GitHub. Installing as directed would pull code from a public GitHub repo and place executables on disk. No direct download-from-untrusted-URL shorteners are present, but the installation process entails running third‑party code from GitHub — a moderate risk that requires repository trust and review before install.
Credentials
The package declares no required env vars in the registry, yet the code and docs expect and load .env variables (SOLANA_RPC_URL, EVM_RPC_URL, WALLET_DATA_DIR, LOG_LEVEL). The tool also reads/writes a local wallets.csv containing private keys and provides import/export with an option to include raw private keys. Requiring no declared credentials while manipulating/consuming private keys and environment RPC URLs is a problematic omission and increases the chance of accidental exposure.
Persistence & Privilege
The project includes an openclaw-setup command and documentation that appends a wallet-mcp entry into ~/.openclaw/workspace/TOOLS.md to persist the tool in agent memory across '/new' sessions. That behavior modifies the agent's persistent configuration files (other than the skill's own files), which is an elevated privilege and should be highlighted to administrators; the registry flags do not reflect this persistence action. always:false mitigates forced inclusion, but the skill provides an explicit helper to make itself persistent.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install wallet-mcp
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /wallet-mcp 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.5.0
# Changelog All notable changes to wallet-mcp are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). --- ## [1.5.0] — 2026-04-12 ### Added - **`add_wallet`** — import a single wallet by private key; public address is derived automatically from the key so users never need to look up or provide the address. Available in both `openclaw/wallet.py` and documented in `SKILL.md`. - **`--from-label`** on `send_native_multi` — resolves sender private key from stored wallet label instead of passing the raw key through chat. Prevents model refusals and avoids exposing private keys in messaging platforms. - **`--to-label`** on `sweep_wallets` — resolves destination address from stored wallet label, consistent with `--from-label` approach on send. - **`wallet-mcp openclaw-setup --force`** — overwrites an existing TOOLS.md entry with the latest template, enabling updates without manual file editing. ### Fixed - **`python` → `python3`** in all `SKILL.md` examples and `TOOLS.md` entry — VPS environments typically lack a bare `python` binary, causing agent to fail execution. - **`export_wallets` path guidance** — removed `--path` from SKILL.md examples; agent was inventing random file paths (`/root/`, `/root/.openclaw/workspace/`). Standard usage now omits `--path` and auto-saves to `~/.wallet-mcp/exports/`. - **`import_wallets` hint** — returns `hint` field when all failures are due to missing `private_key`, explaining that the source file must be re-exported with `--include-keys`. - **`send_native_multi` clarification** — documented as group send only (one-to-many); agent was inventing a non-existent `send_native_single` command. - **`scan_token_accounts` vs `scan_token_balances` disambiguation** — added comparison table to SKILL.md; agent was calling built-in `SOLANA()` tool instead of `wallet.py` and confusing single-address scan with group scan. - **`group_summary` no-args note** — agent was appending `--label` or other flags to a command that takes no arguments. - **Synchronous execution note** — agent was hallucinating background tasks (`process --action poll`, session IDs, PIDs) because SKILL.md did not state that `wallet.py` is fully synchronous and returns JSON immediately. - **`openclaw-setup --force`** in `TOOLS.md` template and `OPENCLAW.md` update section. --- ## [1.4.0] — 2026-04-10 ### Added - **`wallet-mcp openclaw-setup`** — new CLI subcommand that automatically appends the wallet-mcp skill entry to `~/.openclaw/workspace/TOOLS.md`. Prevents the OpenClaw agent from forgetting wallet-mcp after `/new` by registering it in the persistent agent memory file that is loaded on every session. Idempotent — safe to run multiple times; skips if entry already present. - **`OPENCLAW.md` Part 5b** — documents the `openclaw-setup` command with expected output, idempotency note, and verification steps. --- ## [1.3.0] — 2026-04-10 ### Added - **OpenClaw integration update** — `openclaw/SKILL.md` bumped to v1.2.0 with full docs for all 13 tools including `sweep_wallets`, `scan_token_balances`, `export_wallets`, `import_wallets` - **`openclaw/wallet.py`** updated with 4 new CLI commands matching the new tools - **`OPENCLAW.md`** fully rewritten — step-by-step install guide covering: - Linux/macOS and Windows uv install - OpenClaw install via npm - Telegram, Discord, WhatsApp channel configuration - AI model setup (Claude, OpenAI, Gemini, OpenRouter) - SKILL.md + wallet.py deployment - RPC endpoint configuration with provider comparison table - systemd service setup - Wallet storage security hardening - Natural language → command mapping table for all 13 tools - Troubleshooting table and update instructions --- ## [1.2.0] — 2026-04-10 ### Added - **`export_wallets`** — export any filtered wallet group to a JSON or CSV file; `include_keys=False` by default for safety; path auto-generated under `~/.wallet-mcp/exports/` when not specified - **`import_wallets`** — import wallets from a JSON or CSV file into local storage; duplicate addresses are auto-skipped; label/tags can be overridden at import time; format auto-detected from file extension --- ## [1.1.0] — 2026-04-10 ### Added - **`sweep_wallets`** — collect all SOL/ETH from a wallet group back to one destination address; supports retry, random delay, and per-wallet skip when balance is too low to cover fees - **`scan_token_balances`** — scan SPL token balances across a Solana wallet group (all tokens or filter by mint), or ERC-20 token balances across an EVM group (contract address required); returns `wallets_with_balance` summary ### Fixed - `signed.rawTransaction` → `signed.raw_transaction` in `evm.py` (`send_eth`) — web3.py v6 renamed the attribute; every EVM send would crash without this fix - `wallet_exists()` in `generator.py` was reading the entire CSV on every iteration (O(n²) for large batches) — now loads existing addresses once into a `set` before the loop --- ## [1.0.0] — 2026-04-09 ### Added - **FastMCP server** (`src/wallet_mcp/server.py`) with 9 registered tools - **`generate_wallets`** — generate N EVM or Solana wallets, save to CSV - **`send_native_multi`** — send SOL/ETH from one wallet to a labeled group with retry, random delays, randomized amounts - **`list_wallets`** — list wallets with chain/label/tag filters; private keys masked by default - **`get_balance_batch`** — fetch native balances for a wallet group - **`close_token_accounts`** — close empty SPL token accounts, reclaim rent SOL - **`scan_token_accounts`** — read-only scan of SPL token accounts - **`tag_wallets`** — add tags to a wallet group - **`group_summary`** — show wallet groups with per-chain counts - **`delete_group`** — permanently delete a wallet group - **CSV storage** at `~/.wallet-mcp/wallets.csv` (configurable via `WALLET_DATA_DIR`) - **python-dotenv** support — `.env` loaded automatically at server startup - **Retry logic** in `core/utils.py` with `attempts >= 1` guard - **Docker support** — multi-stage `Dockerfile` + `docker-compose.yml` with persistent volume - **GitHub Actions** — `ci.yml` (test on push/PR, Python 3.11 + 3.12) and `release.yml` (build + GitHub Release on tag) - **MCP Inspector** support via `mcp dev src/wallet_mcp/server.py` - **Architecture diagram** — `assets/architecture.png` + `assets/architecture.md` - `INSTALLATION.md`, `EXAMPLES.md`, `openclaw/SKILL.md`, `CONTRIBUTING.md` ### Fixed - `rpc_url=None` no longer crashes core functions — all RPC functions fall back to `DEFAULT_RPC` when `None` is passed - `get_token_accounts_by_owner` uses `TokenAccountOpts(program_id=...)` (correct solana-py API, not raw dict) - Token account data parsing handles both `dict` and object forms across solana-py versions - `retry(attempts=0)` raises `ValueError` instead of `TypeError: raise None` - Variable shadowing (`w`) in `manager.py` batch balance loop ### Security - Private keys masked in `list_wallets` output by default (`show_keys=False`) - `.gitignore` excludes `wallets.csv`, `.env`, `__pycache__`, logs - Docker runs as non-root `mcpuser`
元数据
Slug wallet-mcp
版本 1.5.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

wallet-mcp 是什么?

Generate, manage, and perform multi-chain wallet operations on Solana and EVM chains with JSON output, including batch sends, sweeps, scans, imports, and exp... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 71 次。

如何安装 wallet-mcp?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install wallet-mcp」即可一键安装,无需额外配置。

wallet-mcp 是免费的吗?

是的,wallet-mcp 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

wallet-mcp 支持哪些平台?

wallet-mcp 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 wallet-mcp?

由 genoshide(@genoshide)开发并维护,当前版本 v1.5.0。

💬 留言讨论