Is it safe to give an MCP server access to my crypto wallet?
Quick Answer
It depends on architecture. Custodial mode (server holds private key) is risky — if compromised, funds are lost. Non-custodial (recommended): the server prepares unsigned transactions, you sign via MetaMask or Ledger. Never store private keys in MCP config files; use environment variables and dedicated wallets.
Detailed Answer
Two Security Models
Custodial (Higher Risk)
The MCP server holds your private key and can sign transactions autonomously. Convenient for automation, but if the server or your machine is compromised, funds can be stolen. Agent errors are also irreversible.
Non-Custodial (Recommended)
The MCP server prepares unsigned transactions. You review and sign them yourself via MetaMask, Ledger, or another wallet. The server never has access to your private key.
Best Practices
| Practice | Why It Matters |
|---|---|
| No keys in config files | Config files can be leaked or committed to git |
| Use environment variables | More secure, can be rotated easily |
| Dedicated wallet with limited funds | Limits maximum possible loss |
| Manual confirmation for large transactions | Human oversight for high-value operations |
| TEE-backed solutions | Hardware-level key isolation for production |
Risk Assessment
| Scenario | Custodial Risk | Non-Custodial Risk |
|---|---|---|
| Machine compromised | Total fund loss | Transaction viewing only |
| AI hallucination | Wrong transaction executed | Transaction rejected by user |
| MCP server malicious | Wallet drained | Suspicious TX flagged |


Comments
Loading comments...