
Product
Introducing Socket Scanning for VS Code Marketplace Extensions
Socket now scans VS Code extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.
@ironwallet/mcp-server
Advanced tools
Local MCP server for Ironwallet: seed-compatible wallet management, transfers and Swap Proxy swaps for EVM, Tron, Bitcoin, Litecoin, Doge, Solana, XRP and TON.
Local MCP server for Ironwallet (ironwallet-mcp bin).
Give an agent a self-custody hot wallet on this machine, seed-compatible with the Ironwallet app. Signing never leaves the machine. Recovery phrases stay encrypted on disk and never pass through the agent.
There is no per-transaction confirmation UI.
Hot-wallet only. Use a dedicated wallet with limited balance. See Security.
Product page: ironwallet.io/ai
Requirements: Node.js 20+ (npx).
npx -y @ironwallet/mcp-server
Or add to MCP config (Cursor: .cursor/mcp.json or global):
{
"mcpServers": {
"ironwallet": {
"command": "npx",
"args": ["-y", "@ironwallet/mcp-server"]
}
}
}
npx pulls the latest published build. First launch can take ~30s while dependencies install. If the MCP client times out, run the same command once in a terminal to warm the cache, then reconnect.
The plugin install on ironwallet.io/ai wires this up automatically.
MCP client → ironwallet-mcp (stdio)
├── encrypted keystore on disk
├── signs on this machine
└── HTTPS to Ironwallet backends
The mnemonic never appears in tool inputs/outputs, logs meant for the agent, or requests to backends / the LLM / the MCP client’s cloud.
| Area | Capability |
|---|---|
| Networks | Ethereum, BSC, Polygon, Base, Arbitrum, Optimism, Avalanche, Tron, Bitcoin, Litecoin, Dogecoin, Solana, XRP, TON |
| Wallets | Create, import, list, and back up (local browser for secrets) |
| Balances | Native coins and tokens |
| Transfers | Fee estimate and send through Ironwallet’s transfer relay |
| Swaps | Quotes and execution through Ironwallet Swap Proxy |
| Policy | Optional per-wallet limits (readOnly, maxPerTx, transfer recipient allow-list). Applies to send_transfer and execute_swap. |
| Tool | Purpose | Moves funds? |
|---|---|---|
list_wallets | Names and addresses | no |
create_wallets | New wallets; returns a browser backup_url | no |
open_wallet_manager | Local browser UI to import / create / back up | no |
get_balance | Native or token balance | no |
estimate_transfer | Fee estimate, no broadcast | no |
send_transfer | Sign locally and send | yes |
get_operation_status | Poll a transfer | no |
list_swap_networks | Networks available for swap | no |
list_swap_assets | Sell / buy catalog | no |
estimate_swap | Quote (may expire) | no |
execute_swap | Fresh quote → sign → swap | yes |
get_swap_status | Poll a swap | no |
No tool accepts or returns a seed. Import and backup only in the local browser (open_wallet_manager / backup_url).
create_wallets — the agent gets names and addresses; open backup_url in a browser to view and back up recovery phrases.open_wallet_manager — loopback-only page; the phrase is typed or shown only in the browser.list_walletsThe browser page binds to 127.0.0.1 under an unguessable path and shuts down after 15 minutes of inactivity.
list_wallets / get_balanceestimate_transfer (optional)send_transferget_operation_status when you need to wait on the operationsend_transfer may reduce the amount slightly so the fee still fits the balance; the response reports when that happened.
Swaps use Swap Proxy, not the transfer relay.
list_swap_networkslist_swap_assets (direction=from, then direction=to with the chosen sell asset)estimate_swap / execute_swap (especially for tokens)estimate_swap for a preview, or go straight to execute_swapget_swap_status using operationIdUseful options
maxMode: true — sell as much of the balance as the service allows (fees are accounted for server-side). amount can be omitted when maxMode is set.address only for native coins. For tokens, always pass address (and ideally decimals) from list_swap_assets.Operational notes
execute_swap (fresh quote). If execute times out, poll status before retrying — do not blindly re-run execute.readOnly blocks sends and swaps. maxPerTx applies to the transfer amount or the corrected swap sell amount. A transfer recipient allow-list also blocks swaps (the swap router is not a whitelisted destination).Nothing to paste into MCP config for normal use. On first launch the server writes a relay API key, keystore wrapping secret, and device id under ~/.ironwallet-mcp/ (keystore-passphrase, relay-api-key, device-id, mode 0600). Set the env vars only to override.
The user-facing backup is the recovery phrase in the wallet manager, not those files.
| Variable | Default | Notes |
|---|---|---|
IW_PASSPHRASE | generated locally | Override keystore wrapping secret |
IW_RELAY_API_KEY | generated UUID | Override x-api-key |
IW_DEVICE_ID | generated UUID | Override X-Device-Id (stable per keystore directory) |
IW_KEYSTORE_DIR | ~/.ironwallet-mcp | Keystore directory |
IW_HTTP_TIMEOUT_MS | 15000 | General HTTP timeout (1s–120s) |
IW_HTTP_FORWARD_TIMEOUT_MS | 60000 | Longer timeout for broadcast-style calls. A client timeout does not always mean the operation failed — check status |
IW_HTTP_RETRIES | 2 | Retries for safe/idempotent calls; broadcasts are not auto-retried |
IW_LOG_ENABLED | 1 | JSONL diagnostics to a log file (0 to disable) |
IW_LOG_FILE | {keystoreDir}/logs/iw-mcp-YYYY-MM-DD.jsonl | Log path |
IW_LOG_LEVEL | info | debug / info / warn / error |
IW_LOG_STDERR | 0 | Mirror logs to stderr (stdout is reserved for MCP) |
readOnly, maxPerTx, transfer recipient allow-list) is off by default and applies to both send_transfer and execute_swap.Details and private disclosure: SECURITY.md.
FAQs
Non-custodial IronWallet MCP: seeds stay encrypted on the host. Balances, local signing, transfers, and swaps across 10+ networks.
The npm package @ironwallet/mcp-server receives a total of 106 weekly downloads. As such, @ironwallet/mcp-server popularity was classified as not popular.
We found that @ironwallet/mcp-server demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Product
Socket now scans VS Code extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.

Research
/Security News
Socket uncovered two malicious VS Code themes in a GlassWorm-linked cluster with thousands of installs across VS Code Marketplace and Open VSX.

Security News
/Company News
Capital One is partnering with Socket to proactively secure its open source supply chain.