Caveat verdict

wallet-mcp

88
🟢 Trusted
No high-risk patterns surfaced by the deep scan — automated capability review, not behavioral proof.

Multi-chain wallet management skill (Solana/EVM) operating on explicitly user-owned wallets for legitimate transfer and sweep operations; --from-label preferred over raw keys, and all commands are documented and user-directed.

⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.

Automated static analysis — not a human review. Caveat flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.

0
security
70
transparency
70
maintenance

Findings (13)

Pattern match critical

Pipe-to-shell pattern (curl | sh) — supply chain attack vector

CONTRIBUTING.md · code · curl -LsSf https://astral.sh/uv/install.sh | sh

Pattern match critical

Pipe to sh — executes piped content as shell commands

CONTRIBUTING.md · code · | sh

Pattern match critical

Possible hardcoded credential

EXAMPLES.md · code · token="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48

Pattern match high

References sudo — requests elevated privileges

INSTALLATION.md · code · sudo

Pattern match high

Pipe to python — executes piped content as Python code

OPENCLAW.md · prose · downgraded · | Python

Pattern match high

Accesses shell history/config

OPENCLAW.md · code · ~/.zshrc

Pattern match high

Accesses OpenClaw config/secrets directly

OPENCLAW.md · code · ~/.openclaw/openclaw.json

Pattern match medium

Sets world-executable permissions

INSTALLATION.md · code · chmod 700

Pattern match low

Python os.getenv — reads environment variable

src/wallet_mcp/core/evm.py · prose · downgraded · os.getenv(

Pattern match low

importlib.import_module — dynamic module loading

src/wallet_mcp/core/generator.py · prose · downgraded · importlib.import_module(

Pattern match low

Base64 encoding/decoding

src/wallet_mcp/core/solana.py · prose · downgraded · base64-encode

Pattern match low

Popular HTTP library — network access

test_local.py · prose · downgraded · got

Pattern match low

Python shutil file operation — copies/moves/deletes files

test_local.py · prose · downgraded · shutil.rmtree(

Why the tier is capped

Execution sink present in raw bytes (Hard Floor: class A/E). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.

Permissions & capabilities

No declared permissions — minimal attack surface.

Is this flag fair?

Check another skill Browse the registry Auditing your own skills or configs? Use the API