MCP Wallet Signer
Enables AI agents to interact with the Ethereum network by facilitating secure wallet connections, message signing, and transaction execution through a browser-based approval interface.
Enables AI agents to interact with the Optimism network by facilitating secure wallet connections, message signing, and transaction execution through a browser-based approval interface.
Enables AI agents to interact with the Polygon network by facilitating secure wallet connections, message signing, and transaction execution through a browser-based approval interface.
mcp-wallet-signer
Superseded by browser-web3-signer — the
same browser-wallet signing flow, reimplemented in Rust with a CLI plus Rust/TypeScript/Go
libraries. Everything published from this repo is now a thin compatibility shim over it, so
existing installs keep working; new code should use browser-web3-signer directly.
Your private keys never leave your browser. Every transaction requires explicit approval in your own wallet (MetaMask, Rabby, TronLink, …).
Most blockchain tooling wants a private key in a config file — full, unsupervised access to your funds. These packages route each request to the browser wallet you already use, so you review and approve it like any other dapp interaction.
Packages
Package | What it is now |
MCP stdio server: four signing tools over | |
The old | |
The same for TRON (TronLink, TRC-20, contract deploys) |
All three spawn browser-web3-signer serve, which owns the localhost bridge, the approval page
and the browser tab. The binary for your platform is installed as a dependency; nothing else to
set up.
MCP server
claude mcp add wallet-signer -- npx -y mcp-wallet-signerOr, for Claude Desktop / Cursor / Windsurf and any other stdio MCP client:
{
"mcpServers": {
"wallet-signer": {
"command": "npx",
"args": ["-y", "mcp-wallet-signer"]
}
}
}Tool | Description |
| Connect a wallet, return the address |
| Send value or call a contract, return the tx hash |
|
|
| Sign EIP-712 typed data, return the signature |
EVM_MCP_DEFAULT_CHAIN sets the chain id used when a call omits one (default: 1).
Libraries
import { WalletSigner } from "browser-evm-signer";
const signer = new WalletSigner({ defaultChainId: 8453 });
const { address } = await signer.connectWallet();
const { txHash } = await signer.sendTransaction({ to: "0x…", value: "1000000000000000000" });Related MCP server: agent-wallet
What changed in the shims
Gone:
PendingStore,pendingStore,createHttpServer,startTestServer,buildConnectUrl,buildSignUrl,openBrowser— the in-process HTTP bridge they drove no longer exists.approvalUrlis now the bridge's base URL. The bridge opens the approval page itself and does not hand the per-request URL back.port(the constructor option) is ignored: the bridge binds its own free port.getPort()/DEFAULT_PORTstill resolve, for source compatibility.MCP: the balance tools (
get_balance,get_token_balance) and the TRON tools are gone from the MCP server. Balances never needed a wallet — any RPC-reading MCP server orcast calldoes them without an approval prompt — and TRON signing is a CLI away.WalletSigner.getBalanceand.getTokenBalanceare untouched in both libraries.Deprecated on npm and JSR.
browser-evm-signer@0.3.0never worked at all: itsexportspointed at./esm/mod.jswhile the tarball shipped./esm/browser-evm-signer/src/mod.js, which tookmcp-wallet-signer@0.6.0down with it (#2).
The pre-shim Deno implementation — the in-process bridge, the Svelte approval UI, the
wallet-signer-core package — is in the history, up to commit
636fd3b.
Development
npm install
npm test # builds, then runs each package's tests against a fake bridgeReleases are per package: tag <package>@<version> and publish a GitHub release.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP server for live Bittensor chain reads and self-custodial on-chain writes.
MCP server connecting AI agents to non-custodial staking data across 130+ networks.
Non-custodial cross-chain crypto swap MCP — 1288+ assets, no KYC. Solana/EVM/Monero, RPC, oracle.
MCP server for Boson Protocol — on-chain agentic commerce for physical & digital goods.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server for local transaction signing across EVM, UTXO, Tron, and XRP blockchains, with no network calls or API keys required.686 npmMIT
- AlicenseNot gradedqualityAmaintenanceMCP server that lets any AI agent operate a wallet directly on-chain: create wallets, send, swap, bridge, and deploy contracts across EVM and Bitcoin networks.1MIT
- AlicenseAqualityCmaintenanceLocal MCP-to-browser signing bridge for EVM, Solana, and Sui, letting agents prepare and simulate transactions while users approve and sign in a browser wallet extension.6MIT
- FlicenseNot gradedqualityBmaintenanceA production-grade MCP server for Web3, enabling real-time multi-chain wallet execution, smart contract auto-compilation and deployment, token swaps, and asset hosting via Supabase.1-